Fix build for platforms not supporting realpath

Added a check for a preprocessor definition that can be set if the platform you're building for doesn't support any notion of absolute path resolution/realpath()/etc.
This commit is contained in:
Chris Pickett 2016-01-05 10:58:46 -06:00
parent a6a38f6035
commit 4731c7e502
1 changed files with 4 additions and 0 deletions

View File

@ -219,6 +219,9 @@ inline void EnsureDirExists(const std::string &filepath) {
// Obtains the absolute path from any other path. // Obtains the absolute path from any other path.
// Returns the input path if the absolute path couldn't be resolved. // Returns the input path if the absolute path couldn't be resolved.
inline std::string AbsolutePath(const std::string &filepath) { inline std::string AbsolutePath(const std::string &filepath) {
#ifdef NO_ABSOLUTE_PATH_RESOLUTION
return filepath;
#else
#ifdef _WIN32 #ifdef _WIN32
char abs_path[MAX_PATH]; char abs_path[MAX_PATH];
return GetFullPathNameA(filepath.c_str(), MAX_PATH, abs_path, nullptr) return GetFullPathNameA(filepath.c_str(), MAX_PATH, abs_path, nullptr)
@ -228,6 +231,7 @@ inline std::string AbsolutePath(const std::string &filepath) {
#endif #endif
? abs_path ? abs_path
: filepath; : filepath;
#endif // NO_ABSOLUTE_PATH_RESOLUTION
} }
// To and from UTF-8 unicode conversion functions // To and from UTF-8 unicode conversion functions