diff --git a/src/Mod/Raytracing/Gui/Command.cpp b/src/Mod/Raytracing/Gui/Command.cpp index d180ed2d05..0e79a70401 100644 --- a/src/Mod/Raytracing/Gui/Command.cpp +++ b/src/Mod/Raytracing/Gui/Command.cpp @@ -274,9 +274,11 @@ void CmdRaytracingWriteView::activated(int) Gui::ViewProvider* vp = getActiveGuiDocument()->getViewProvider(*it); if (vp && vp->isVisible()) { App::PropertyColor *pcColor = dynamic_cast(vp->getPropertyByName("ShapeColor")); - App::Color col = pcColor->getValue(); - doCommand(Doc,"content += Raytracing.getPartAsPovray('%s',App.activeDocument().%s.Shape,%f,%f,%f)", - (*it)->getNameInDocument(),(*it)->getNameInDocument(),col.r,col.g,col.b); + if (pcColor) { + App::Color col = pcColor->getValue(); + doCommand(Doc,"content += Raytracing.getPartAsPovray('%s',App.activeDocument().%s.Shape,%f,%f,%f)", + (*it)->getNameInDocument(),(*it)->getNameInDocument(),col.r,col.g,col.b); + } } } doCommand(Doc,"result = result.replace('//RaytracingContent',content)");