浏览代码

Resolve relative icon paths for GDExtensions

Yuri Sizov 1 年之前
父节点
当前提交
d427851013
共有 1 个文件被更改,包括 6 次插入1 次删除
  1. 6 1
      core/extension/gdextension.cpp

+ 6 - 1
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;
 		}
 	}