Fix issue with get_current_dir() returning the wrong path on Android

This commit is contained in:
Fredia Huya-Kouadio 2022-08-14 19:29:18 -07:00
parent 47d3fd99a2
commit a356e49803
2 changed files with 15 additions and 0 deletions

View file

@ -135,6 +135,20 @@ String DirAccessJAndroid::get_drive(int p_drive) {
}
}
String DirAccessJAndroid::get_current_dir(bool p_include_drive) const {
String base = _get_root_path();
String bd = current_dir;
if (!base.is_empty()) {
bd = current_dir.replace_first(base, "");
}
if (bd.begins_with("/")) {
return _get_root_string() + bd.substr(1, bd.length());
} else {
return _get_root_string() + bd;
}
}
Error DirAccessJAndroid::change_dir(String p_dir) {
String new_dir = get_absolute_path(p_dir);
if (new_dir == current_dir) {

View file

@ -67,6 +67,7 @@ public:
virtual int get_drive_count() override;
virtual String get_drive(int p_drive) override;
virtual String get_current_dir(bool p_include_drive = true) const override; ///< return current dir location
virtual Error change_dir(String p_dir) override; ///< can be relative or absolute, return false on success