summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/gdscript/gdscript_cache.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/gdscript/gdscript_cache.cpp b/modules/gdscript/gdscript_cache.cpp
index 07f50d14dc..9f7fa87871 100644
--- a/modules/gdscript/gdscript_cache.cpp
+++ b/modules/gdscript/gdscript_cache.cpp
@@ -198,7 +198,15 @@ Ref<GDScript> GDScriptCache::get_full_script(const String &p_path, Error &r_erro
r_error = OK;
if (singleton->full_gdscript_cache.has(p_path)) {
- return singleton->full_gdscript_cache[p_path];
+ Ref<GDScript> script = singleton->full_gdscript_cache[p_path];
+#ifdef TOOLS_ENABLED
+ uint64_t mt = FileAccess::get_modified_time(p_path);
+ if (script->get_last_modified_time() == mt) {
+ return script;
+ }
+#else
+ return script;
+#endif //TOOLS_ENABLED
}
Ref<GDScript> script = get_shallow_script(p_path);