Fix issue with `get_current_dir()` returning the wrong path on Android
This commit is contained in:
parent
47d3fd99a2
commit
a356e49803
|
@ -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) {
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
Loading…
Reference in New Issue