diff --git a/modules/gfx/pymod/export_scene.cc b/modules/gfx/pymod/export_scene.cc
index 0c4ff6b870f7f7097f944f5fccca51346856ac25..11d0f49d5d3f418c7f4531a3d4bba3b0b36c8192 100644
--- a/modules/gfx/pymod/export_scene.cc
+++ b/modules/gfx/pymod/export_scene.cc
@@ -87,10 +87,6 @@ void scene_set_hemi_p(Scene* s, tuple p)
 
 } // anon ns
 
-void clear_scene() {
-  Scene::Instance().RemoveAll();
-}
-
 void export_Scene()
 {
   def("Scene",get_scene,return_value_policy<reference_existing_object>());
@@ -268,15 +264,5 @@ void export_Scene()
     .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);
-
 }