mirror of https://github.com/vitalif/openscad
fix issue with gcc 4.4.5. pointer to renderer in export_png segfaulted
worked fine in clangissue480
parent
b779d6a93b
commit
a36b5f740a
|
@ -70,16 +70,10 @@ void export_png_preview_common( Tree &tree, Camera &cam, std::ostream &output, P
|
|||
return;
|
||||
}
|
||||
|
||||
Renderer *renderer;
|
||||
if ( previewer == OPENCSG ) {
|
||||
#ifdef ENABLE_OPENCSG
|
||||
OpenCSGRenderer openCSGRenderer(csgInfo.root_chain, csgInfo.highlights_chain, csgInfo.background_chain, csgInfo.glview->shaderinfo);
|
||||
renderer = &openCSGRenderer;
|
||||
#endif
|
||||
} else {
|
||||
ThrownTogetherRenderer thrownTogetherRenderer( csgInfo.root_chain, csgInfo.highlights_chain, csgInfo.background_chain );
|
||||
renderer = &thrownTogetherRenderer;
|
||||
}
|
||||
|
||||
if (cam.type == Camera::NONE) {
|
||||
cam.type = Camera::VECTOR;
|
||||
|
@ -94,7 +88,10 @@ void export_png_preview_common( Tree &tree, Camera &cam, std::ostream &output, P
|
|||
}
|
||||
|
||||
csgInfo.glview->setCamera( cam );
|
||||
csgInfo.glview->setRenderer( renderer );
|
||||
if ( previewer == OPENCSG )
|
||||
csgInfo.glview->setRenderer( &openCSGRenderer );
|
||||
else
|
||||
csgInfo.glview->setRenderer( &thrownTogetherRenderer );
|
||||
#ifdef ENABLE_OPENCSG
|
||||
OpenCSG::setContext( 0 );
|
||||
OpenCSG::setOption( OpenCSG::OffscreenSetting, OpenCSG::FrameBufferObject );
|
||||
|
|
Loading…
Reference in New Issue