summaryrefslogtreecommitdiffstats
path: root/core/object/script_language.h
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-11-09 18:09:01 +0100
committerRémi Verschelde <rverschelde@gmail.com>2023-11-09 18:09:01 +0100
commit19db9308ffb7a3bd3d34d6be92ab08fb54f350bb (patch)
treecfd0743c921e3e622e8f84639b6964324bb7fb5d /core/object/script_language.h
parentd36cc7313e3c0c8d717522964cc8c577b8a0863a (diff)
parentf3e96a85485f68ee8c3e669e4bb6c910762a9130 (diff)
downloadredot-engine-19db9308ffb7a3bd3d34d6be92ab08fb54f350bb.tar.gz
Merge pull request #84657 from RandomShaper/lang_srv_threading
Make languages bookkeeping thread-safe
Diffstat (limited to 'core/object/script_language.h')
-rw-r--r--core/object/script_language.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/core/object/script_language.h b/core/object/script_language.h
index 3e4041d173..85e64c8d62 100644
--- a/core/object/script_language.h
+++ b/core/object/script_language.h
@@ -52,9 +52,11 @@ class ScriptServer {
static ScriptLanguage *_languages[MAX_LANGUAGES];
static int _language_count;
+ static bool languages_ready;
+ static Mutex languages_mutex;
+
static bool scripting_enabled;
static bool reload_scripts_on_save;
- static SafeFlag languages_finished; // Used until GH-76581 is fixed properly.
struct GlobalScriptClass {
StringName language;
@@ -98,8 +100,7 @@ public:
static void init_languages();
static void finish_languages();
-
- static bool are_languages_finished() { return languages_finished.is_set(); }
+ static bool are_languages_initialized();
};
class PlaceHolderScriptInstance;