From 27a141eccac29cd3a289e9ecf013c2bfd574cc82 Mon Sep 17 00:00:00 2001 From: hrydgard Date: Sun, 27 Jul 2008 20:51:02 +0000 Subject: Just submitting some boring minor cleanup and improved error msgs, to isolate my next change. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@92 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/Common/Src/FileUtil.cpp | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) (limited to 'Source/Core/Common/Src/FileUtil.cpp') diff --git a/Source/Core/Common/Src/FileUtil.cpp b/Source/Core/Common/Src/FileUtil.cpp index 2d3d827477..b91adc0053 100644 --- a/Source/Core/Common/Src/FileUtil.cpp +++ b/Source/Core/Common/Src/FileUtil.cpp @@ -2,6 +2,8 @@ #include "FileUtil.h" #ifdef _WIN32 #include +#else +#include #endif bool File::Exists(const std::string &filename) @@ -9,7 +11,9 @@ bool File::Exists(const std::string &filename) #ifdef _WIN32 return GetFileAttributes(filename.c_str()) != INVALID_FILE_ATTRIBUTES; #else - return true; //TODO + struct stat file_info; + int result = stat(filename.c_str(), &file_info); + return result == 0; #endif } @@ -17,14 +21,16 @@ bool File::IsDirectory(const std::string &filename) { #ifdef _WIN32 return (GetFileAttributes(filename.c_str()) & FILE_ATTRIBUTE_DIRECTORY) != 0; #else - return false; //TODO + // TODO: Insert POSIX code here. + return false; #endif } std::string SanitizePath(const std::string &filename) { std::string copy = filename; for (int i = 0; i < copy.size(); i++) - if (copy[i] == '/') copy[i] = '\\'; + if (copy[i] == '/') + copy[i] = '\\'; return copy; } @@ -38,6 +44,8 @@ void File::Launch(const std::string &filename) shex.lpFile = win_filename.c_str(); shex.nShow = SW_SHOWNORMAL; ShellExecuteEx(&shex); +#else + // TODO: Insert GNOME/KDE code here. #endif } @@ -51,6 +59,8 @@ void File::Explore(const std::string &path) shex.lpFile = win_path.c_str(); shex.nShow = SW_SHOWNORMAL; ShellExecuteEx(&shex); +#else + // TODO: Insert GNOME/KDE code here. #endif } @@ -59,19 +69,16 @@ bool File::CreateDir(const std::string &path) { #ifdef _WIN32 if (::CreateDirectory(path.c_str(), NULL)) - { return true; - } - else + DWORD error = GetLastError(); + if (error == ERROR_ALREADY_EXISTS) { - DWORD error = GetLastError(); - if (error == ERROR_ALREADY_EXISTS) - { - PanicAlert("%s already exists", path.c_str()); - return true; - } - PanicAlert("Error creating directory: %i", error); - return false; + PanicAlert("%s already exists", path.c_str()); + return true; } + PanicAlert("Error creating directory: %i", error); + return false; +#else + // TODO: Insert POSIX code here. #endif } \ No newline at end of file -- cgit v1.2.3