Fixed ~CSharpScript() holding on to a mutex longer than necessary, creating potential for a deadlock.
(cherry picked from commit 9d50a486bf
)
This commit is contained in:
parent
587d689c5f
commit
167b4c071c
@ -2819,15 +2819,17 @@ CSharpScript::CSharpScript() {
|
|||||||
#ifdef DEBUG_ENABLED
|
#ifdef DEBUG_ENABLED
|
||||||
{
|
{
|
||||||
MutexLock lock(CSharpLanguage::get_singleton()->script_instances_mutex);
|
MutexLock lock(CSharpLanguage::get_singleton()->script_instances_mutex);
|
||||||
CSharpLanguage::get_singleton()->script_list.add(&this->script_list);
|
CSharpLanguage::get_singleton()->script_list.add(&script_list);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
CSharpScript::~CSharpScript() {
|
CSharpScript::~CSharpScript() {
|
||||||
#ifdef DEBUG_ENABLED
|
#ifdef DEBUG_ENABLED
|
||||||
MutexLock lock(CSharpLanguage::get_singleton()->script_instances_mutex);
|
{
|
||||||
CSharpLanguage::get_singleton()->script_list.remove(&this->script_list);
|
MutexLock lock(CSharpLanguage::get_singleton()->script_instances_mutex);
|
||||||
|
CSharpLanguage::get_singleton()->script_list.remove(&script_list);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (GDMonoCache::godot_api_cache_updated) {
|
if (GDMonoCache::godot_api_cache_updated) {
|
||||||
|
Loading…
Reference in New Issue
Block a user