diff --git a/modules/gdnative/pluginscript/register_types.cpp b/modules/gdnative/pluginscript/register_types.cpp
index b7ab887e114..3b46f33afb5 100644
--- a/modules/gdnative/pluginscript/register_types.cpp
+++ b/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()) {
 		PluginScriptLanguage *language = e->get();
 		ScriptServer::unregister_language(language);
+		ResourceLoader::remove_resource_format_loader(language->get_resource_loader());
+		ResourceSaver::remove_resource_format_saver(language->get_resource_saver());
 		memdelete(language);
 	}
 }