Merge pull request #113088 from KoBeWi/juggling_paths

Ensure paths in autoload info
This commit is contained in:
Rémi Verschelde 2025-12-04 13:21:43 +01:00
commit daf2871828
No known key found for this signature in database
GPG key ID: C3336907360768E1
3 changed files with 9 additions and 1 deletions

View file

@ -1506,6 +1506,12 @@ ProjectSettings::AutoloadInfo ProjectSettings::get_autoload(const StringName &p_
return autoloads[p_name]; return autoloads[p_name];
} }
void ProjectSettings::fix_autoload_paths() {
for (KeyValue<StringName, AutoloadInfo> &kv : autoloads) {
kv.value.path = ResourceUID::ensure_path(kv.value.path);
}
}
const HashMap<StringName, String> &ProjectSettings::get_global_groups_list() const { const HashMap<StringName, String> &ProjectSettings::get_global_groups_list() const {
return global_groups; return global_groups;
} }

View file

@ -223,6 +223,7 @@ public:
void remove_autoload(const StringName &p_autoload); void remove_autoload(const StringName &p_autoload);
bool has_autoload(const StringName &p_autoload) const; bool has_autoload(const StringName &p_autoload) const;
AutoloadInfo get_autoload(const StringName &p_name) const; AutoloadInfo get_autoload(const StringName &p_name) const;
void fix_autoload_paths();
const HashMap<StringName, String> &get_global_groups_list() const; const HashMap<StringName, String> &get_global_groups_list() const;
void add_global_group(const StringName &p_name, const String &p_description); void add_global_group(const StringName &p_name, const String &p_description);

View file

@ -2201,7 +2201,8 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
initialize_modules(MODULE_INITIALIZATION_LEVEL_CORE); initialize_modules(MODULE_INITIALIZATION_LEVEL_CORE);
register_core_extensions(); // core extensions must be registered after globals setup and before display register_core_extensions(); // core extensions must be registered after globals setup and before display
ResourceUID::get_singleton()->load_from_cache(true); // load UUIDs from cache. ResourceUID::get_singleton()->load_from_cache(true); // Load UUIDs from cache.
ProjectSettings::get_singleton()->fix_autoload_paths(); // Handles autoloads saved as UID.
if (ProjectSettings::get_singleton()->has_custom_feature("dedicated_server")) { if (ProjectSettings::get_singleton()->has_custom_feature("dedicated_server")) {
audio_driver = NULL_AUDIO_DRIVER; audio_driver = NULL_AUDIO_DRIVER;