diff options
author | marynate <mary.w.nate@gmail.com> | 2014-05-25 11:34:51 +0800 |
---|---|---|
committer | marynate <mary.w.nate@gmail.com> | 2014-05-25 14:50:54 +0800 |
commit | e6c1689b69e9e0ec530902b550c9e1e2d1cd0aae (patch) | |
tree | ec9350bef9fc1c0bf6bedd73cc5768115dd6efec /drivers/unix/dir_access_unix.cpp | |
parent | 71355aaab7eca64bec694918c6b911a412ad17f0 (diff) | |
download | redot-engine-e6c1689b69e9e0ec530902b550c9e1e2d1cd0aae.tar.gz |
Add DirAccess:dir_exist api
Diffstat (limited to 'drivers/unix/dir_access_unix.cpp')
-rw-r--r-- | drivers/unix/dir_access_unix.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/unix/dir_access_unix.cpp b/drivers/unix/dir_access_unix.cpp index fff86c5a7e..452d791d96 100644 --- a/drivers/unix/dir_access_unix.cpp +++ b/drivers/unix/dir_access_unix.cpp @@ -81,6 +81,26 @@ bool DirAccessUnix::file_exists(String p_file) { } +bool DirAccessUnix::dir_exists(String p_dir) { + + GLOBAL_LOCK_FUNCTION + + + if (p_dir.is_rel_path()) + p_dir=current_dir+"/"+p_dir; + else + p_dir=fix_path(p_dir); + + struct stat flags; + bool success = (stat(p_dir.utf8().get_data(),&flags)==0); + + if (success && S_ISDIR(flags.st_mode)) + return true; + + return false; + +} + uint64_t DirAccessUnix::get_modified_time(String p_file) { if (p_file.is_rel_path()) |