Skip to content
Snippets Groups Projects
Commit 5261e209 authored by Studer Gabriel's avatar Studer Gabriel Committed by Gabriel Studer
Browse files

fix another segfault on exit

parent 2883114c
Branches
Tags
No related merge requests found
......@@ -87,6 +87,9 @@ void scene_set_hemi_p(Scene* s, tuple p)
} // anon ns
void clear_scene() {
Scene::Instance().RemoveAll();
}
void export_Scene()
{
......@@ -264,4 +267,16 @@ void export_Scene()
.add_property("show_export_aspect",&Scene::GetShowExportAspect,&Scene::SetShowExportAspect)
.add_property("hemi_params",scene_get_hemi_p,scene_set_hemi_p)
;
// we need to make sure there are no pending references to Python objects
// tied to the scene singleton. The destructor of
// scene may be called after Python is shutdown which results
// in a segfault.
scope().attr("__dict__")["atexit"]=handle<>(PyImport_ImportModule("atexit"));
def("_clear_scene", &clear_scene);
object r=scope().attr("_clear_scene");
scope().attr("atexit").attr("register")(r);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment