1
0
Fork 0

Fix Plugin Scripts load twice on startup

This commit is contained in:
Hilderin 2025-02-07 10:07:45 -05:00
parent 3f56b3b239
commit 7f89294f1d
1 changed files with 3 additions and 1 deletions

View File

@ -3710,7 +3710,9 @@ void EditorNode::set_addon_plugin_enabled(const String &p_addon, bool p_enabled,
// Only try to load the script if it has a name. Else, the plugin has no init script.
if (script_path.length() > 0) {
script_path = addon_path.get_base_dir().path_join(script_path);
scr = ResourceLoader::load(script_path, "Script", ResourceFormatLoader::CACHE_MODE_IGNORE);
// We should not use the cached version on startup to prevent a script reload
// if it is already loaded and potentially running from autoloads. See GH-100750.
scr = ResourceLoader::load(script_path, "Script", EditorFileSystem::get_singleton()->doing_first_scan() ? ResourceFormatLoader::CACHE_MODE_REUSE : ResourceFormatLoader::CACHE_MODE_IGNORE);
if (scr.is_null()) {
show_warning(vformat(TTR("Unable to load addon script from path: '%s'."), script_path));