summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuri Sizov <yuris@humnom.net>2023-10-05 12:49:31 +0200
committerYuri Sizov <yuris@humnom.net>2023-10-05 12:49:31 +0200
commitd427851013f6a2f2cd021d273f2f476902c9fdcf (patch)
tree5aa9435195693728c50d350419aab9bb380d9205
parentc7ed5d795ef396650e1e2853cf0d76cbdb1cb45e (diff)
downloadredot-engine-d427851013f6a2f2cd021d273f2f476902c9fdcf.tar.gz
Resolve relative icon paths for GDExtensions
-rw-r--r--core/extension/gdextension.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/core/extension/gdextension.cpp b/core/extension/gdextension.cpp
index 7e280466a8..b75ccbba1d 100644
--- a/core/extension/gdextension.cpp
+++ b/core/extension/gdextension.cpp
@@ -937,7 +937,12 @@ Error GDExtensionResourceLoader::load_gdextension_resource(const String &p_path,
List<String> keys;
config->get_section_keys("icons", &keys);
for (const String &key : keys) {
- p_extension->class_icon_paths[key] = config->get_value("icons", key);
+ String icon_path = config->get_value("icons", key);
+ if (icon_path.is_relative_path()) {
+ icon_path = p_path.get_base_dir().path_join(icon_path);
+ }
+
+ p_extension->class_icon_paths[key] = icon_path;
}
}