mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
Use script instance binding for objects constructed from C#
Only possible if the object class is a "native type". If the object class is a user class (that derives a "native type") then a script is needed. Since CSharpLanguage does cleanup of script instance bindings when finished, cases like #25621 will no longer cause problems. Fixed ~Object() trying to free script instance bindings after the language has already been removed, which would result in a NULL dereference.
This commit is contained in:
parent
16d402147b
commit
9df44c2d2c
9 changed files with 88 additions and 19 deletions
|
@ -37,6 +37,7 @@ int ScriptServer::_language_count = 0;
|
|||
|
||||
bool ScriptServer::scripting_enabled = true;
|
||||
bool ScriptServer::reload_scripts_on_save = false;
|
||||
bool ScriptServer::languages_finished = false;
|
||||
ScriptEditRequestFunction ScriptServer::edit_request_func = NULL;
|
||||
|
||||
void Script::_notification(int p_what) {
|
||||
|
@ -130,6 +131,7 @@ void ScriptServer::finish_languages() {
|
|||
_languages[i]->finish();
|
||||
}
|
||||
global_classes_clear();
|
||||
languages_finished = true;
|
||||
}
|
||||
|
||||
void ScriptServer::set_reload_scripts_on_save(bool p_enable) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue