Added relative paths for DirAccess::remove()

Follows similar behaviour to DirAccess::rename()

(cherry picked from commit d7052ddba3)
This commit is contained in:
Zher Huei Lee 2016-03-01 10:40:31 +00:00 committed by Rémi Verschelde
parent afd75013f9
commit c850fa7331
4 changed files with 17 additions and 8 deletions

View File

@ -292,8 +292,11 @@ Error DirAccessUnix::rename(String p_path,String p_new_path) {
} }
Error DirAccessUnix::remove(String p_path) { Error DirAccessUnix::remove(String p_path) {
p_path=fix_path(p_path); if (p_path.is_rel_path())
p_path=get_current_dir().plus_file(p_path);
else
p_path=fix_path(p_path);
struct stat flags; struct stat flags;
if ((stat(p_path.utf8().get_data(),&flags)!=0)) if ((stat(p_path.utf8().get_data(),&flags)!=0))
return FAILED; return FAILED;

View File

@ -310,8 +310,11 @@ Error DirAccessWindows::rename(String p_path,String p_new_path) {
Error DirAccessWindows::remove(String p_path) { Error DirAccessWindows::remove(String p_path) {
p_path=fix_path(p_path); if (p_path.is_rel_path())
p_path=get_current_dir().plus_file(p_path);
else
p_path=fix_path(p_path);
printf("erasing %s\n",p_path.utf8().get_data()); printf("erasing %s\n",p_path.utf8().get_data());
//WIN32_FILE_ATTRIBUTE_DATA fileInfo; //WIN32_FILE_ATTRIBUTE_DATA fileInfo;
//DWORD fileAttr = GetFileAttributesExW(p_path.c_str(), GetFileExInfoStandard, &fileInfo); //DWORD fileAttr = GetFileAttributesExW(p_path.c_str(), GetFileExInfoStandard, &fileInfo);

View File

@ -183,12 +183,12 @@ size_t DirAccessFlash::get_space_left() {
Error DirAccessFlash::rename(String p_from, String p_to) { Error DirAccessFlash::rename(String p_from, String p_to) {
return FAILED; ERR_FAIL_V(ERR_UNAVAILABLE);
}; };
Error DirAccessFlash::remove(String p_name) { Error DirAccessFlash::remove(String p_name) {
return FAILED; ERR_FAIL_V(ERR_UNAVAILABLE);
}; };
extern char* psp_drive; extern char* psp_drive;

View File

@ -297,8 +297,11 @@ Error DirAccessOSX::rename(String p_path,String p_new_path) {
} }
Error DirAccessOSX::remove(String p_path) { Error DirAccessOSX::remove(String p_path) {
p_path=fix_path(p_path); if (p_path.is_rel_path())
p_path=get_current_dir().plus_file(p_path);
else
p_path=fix_path(p_path);
struct stat flags; struct stat flags;
if ((stat(p_path.utf8().get_data(),&flags)!=0)) if ((stat(p_path.utf8().get_data(),&flags)!=0))
return FAILED; return FAILED;