diff options
| author | reduz | 2014-06-11 01:19:39 -0300 |
|---|---|---|
| committer | reduz | 2014-06-11 01:19:39 -0300 |
| commit | bb0dd1c5f9c1219eb5d4880f5521943f66b8d03f (patch) | |
| tree | d7bd13bad144c41f2e8bb448d5d233b46402738b /drivers/windows/dir_access_windows.cpp | |
| parent | 2bf34875debd1b60809d22cf61a300b56cdfe084 (diff) | |
| parent | e6c1689b69e9e0ec530902b550c9e1e2d1cd0aae (diff) | |
| download | godot-bb0dd1c5f9c1219eb5d4880f5521943f66b8d03f.tar.gz godot-bb0dd1c5f9c1219eb5d4880f5521943f66b8d03f.tar.zst godot-bb0dd1c5f9c1219eb5d4880f5521943f66b8d03f.zip | |
Merge pull request #459 from marynate/PR-diracccess-dir-exists
Add DirAccess:dir_exist api
Diffstat (limited to '')
| -rw-r--r-- | drivers/windows/dir_access_windows.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/drivers/windows/dir_access_windows.cpp b/drivers/windows/dir_access_windows.cpp index 30f6ff6d8..aacd02ca2 100644 --- a/drivers/windows/dir_access_windows.cpp +++ b/drivers/windows/dir_access_windows.cpp @@ -303,6 +303,39 @@ bool DirAccessWindows::file_exists(String p_file) { return false; } +bool DirAccessWindows::dir_exists(String p_dir) { + + GLOBAL_LOCK_FUNCTION + + if (!p_dir.is_abs_path()) + p_dir=get_current_dir()+"/"+p_dir; + p_dir=fix_path(p_dir); + + p_dir.replace("/","\\"); + + if (unicode) { + + DWORD fileAttr; + + fileAttr = GetFileAttributesW(p_dir.c_str()); + if (0xFFFFFFFF == fileAttr) + return false; + + return (fileAttr&FILE_ATTRIBUTE_DIRECTORY); + + } else { + DWORD fileAttr; + + fileAttr = GetFileAttributesA(p_dir.ascii().get_data()); + if (0xFFFFFFFF == fileAttr) + return false; + return (fileAttr&FILE_ATTRIBUTE_DIRECTORY); + + } + + return false; +} + Error DirAccessWindows::rename(String p_path,String p_new_path) { p_path=fix_path(p_path); |
