Browse Source

Remove added pluginscript resource format loaders and savers on cleanup

Properly release added resource loader and save references. Otherwise PluginScript API
may cause "ObjectDB Instances still exist!" warnings and segmentation faults on exit.
Ivan Hilaire 6 years ago
parent
commit
5d88f74677
1 changed files with 2 additions and 0 deletions
  1. 2 0
      modules/gdnative/pluginscript/register_types.cpp

+ 2 - 0
modules/gdnative/pluginscript/register_types.cpp

@@ -114,6 +114,8 @@ void unregister_pluginscript_types() {
 	for (List<PluginScriptLanguage *>::Element *e = pluginscript_languages.front(); e; e = e->next()) {
 	for (List<PluginScriptLanguage *>::Element *e = pluginscript_languages.front(); e; e = e->next()) {
 		PluginScriptLanguage *language = e->get();
 		PluginScriptLanguage *language = e->get();
 		ScriptServer::unregister_language(language);
 		ScriptServer::unregister_language(language);
+		ResourceLoader::remove_resource_format_loader(language->get_resource_loader());
+		ResourceSaver::remove_resource_format_saver(language->get_resource_saver());
 		memdelete(language);
 		memdelete(language);
 	}
 	}
 }
 }