Jelajahi Sumber

[GDNative] fix editor crash with NativeScript

karroffel 7 tahun lalu
induk
melakukan
567d20fe5f
1 mengubah file dengan 6 tambahan dan 4 penghapusan
  1. 6 4
      modules/gdnative/nativescript/nativescript.cpp

+ 6 - 4
modules/gdnative/nativescript/nativescript.cpp

@@ -835,12 +835,14 @@ NativeScriptLanguage::~NativeScriptLanguage() {
 
 	for (Map<String, Ref<GDNative> >::Element *L = NSL->library_gdnatives.front(); L; L = L->next()) {
 
-		L->get()->terminate();
-		NSL->library_classes.clear();
-		NSL->library_gdnatives.clear();
-		NSL->library_script_users.clear();
+		if (L->get().is_valid())
+			L->get()->terminate();
 	}
 
+	NSL->library_classes.clear();
+	NSL->library_gdnatives.clear();
+	NSL->library_script_users.clear();
+
 #ifndef NO_THREADS
 	memdelete(mutex);
 #endif