diff --git a/core/io/resource_loader.cpp b/core/io/resource_loader.cpp index 6a35837ac522..aeb492eec0fa 100644 --- a/core/io/resource_loader.cpp +++ b/core/io/resource_loader.cpp @@ -830,6 +830,8 @@ Ref ResourceLoader::_load_complete_inner(LoadToken &p_load_token, Erro load_task_ptr = &load_task; } + thread_load_mutex.unlock(); + Ref resource = load_task_ptr->resource; if (r_error) { *r_error = load_task_ptr->error; @@ -867,6 +869,8 @@ Ref ResourceLoader::_load_complete_inner(LoadToken &p_load_token, Erro } } + thread_load_mutex.lock(); + return resource; }