1
0
mirror of https://github.com/godotengine/godot.git synced 2025-12-31 18:41:20 +00:00

[Unix] Remove leading .. from absolute paths and apply simplify_path to Unix current directory path.

This commit is contained in:
Pāvels Nadtočajevs
2025-12-04 19:07:30 +02:00
parent 63e14e13f9
commit 6c6c184c32
3 changed files with 11 additions and 0 deletions

View File

@@ -4189,6 +4189,9 @@ String String::simplify_path() const {
}
}
Vector<String> dirs = s.split("/", false);
bool absolute_path = is_absolute_path();
absolute_path = absolute_path && !begins_with("res://"); // FIXME: Some code (GLTF importer) rely on accessing files up from `res://`, this probably should be disabled in the future.
for (int i = 0; i < dirs.size(); i++) {
String d = dirs[i];
@@ -4200,6 +4203,9 @@ String String::simplify_path() const {
dirs.remove_at(i);
dirs.remove_at(i - 1);
i -= 2;
} else if (absolute_path && i == 0) {
dirs.remove_at(i);
i--;
}
}
}