summaryrefslogtreecommitdiffstats
path: root/core/io/resource_loader.cpp
diff options
context:
space:
mode:
authorPedro J. Estébanez <pedrojrulez@gmail.com>2023-07-03 12:27:57 +0200
committerPedro J. Estébanez <pedrojrulez@gmail.com>2023-07-03 12:27:57 +0200
commit30925fcfb07d7c0b523761572a2da1865b55c86c (patch)
tree12e223cb70406f7970edffb61e191af7378cef0d /core/io/resource_loader.cpp
parent46424488edc341b65467ee7fd3ac423e4d49ad34 (diff)
downloadredot-engine-30925fcfb07d7c0b523761572a2da1865b55c86c.tar.gz
Fix management of safe-for-nodes flag in ResourceLoader and WorkerThreadPool
Diffstat (limited to 'core/io/resource_loader.cpp')
-rw-r--r--core/io/resource_loader.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/core/io/resource_loader.cpp b/core/io/resource_loader.cpp
index 525c41cf87..4e001efcf8 100644
--- a/core/io/resource_loader.cpp
+++ b/core/io/resource_loader.cpp
@@ -309,6 +309,10 @@ void ResourceLoader::_thread_load_function(void *p_userdata) {
}
// --
+ if (!Thread::is_main_thread()) {
+ set_current_thread_safe_for_nodes(true);
+ }
+
Ref<Resource> res = _load(load_task.remapped_path, load_task.remapped_path != load_task.local_path ? load_task.local_path : String(), load_task.type_hint, load_task.cache_mode, &load_task.error, load_task.use_sub_threads, &load_task.progress);
if (mq_override) {
mq_override->flush();