we need to explicitly destroy that here, too, so that it has guaranteed
access to the Nasal subsystem. Otherwise we get a segfault on exit. When
the next subsystem needs this special treatement (radar?), we should
introduce a new subsystem group (in addition to INIT and GENERAL)
{
// remove subsystems first, which need access to other subsystems in their
// destructors (e.g. "nasal")
- SGSubsystem *sub = globals->get_subsystem("ai_model");
+ SGSubsystem *sub;
+
+ sub = globals->get_subsystem("ai_model");
globals->get_subsystem_mgr()->get_group(SGSubsystemMgr::GENERAL)->remove_subsystem("ai_model");
delete sub;
+
+ sub = globals->get_subsystem("submodel_mgr");
+ globals->get_subsystem_mgr()->get_group(SGSubsystemMgr::GENERAL)->remove_subsystem("submodel_mgr");
+ delete sub;
+
#ifdef OSG_LIBRARY_STATIC
osgDB::Registry::instance( true);
#endif