1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
--- a/ibrcommon/data/File.cpp +++ b/ibrcommon/data/File.cpp @@ -35,10 +35,6 @@ #include <cerrno> #include <fstream> -#if !defined(HAVE_FEATURES_H) || defined(ANDROID) -#include <libgen.h> -#endif - #ifdef __WIN32__ #include <io.h> #define FILE_DELIMITER_CHAR '\\' @@ -225,14 +221,11 @@ namespace ibrcommon std::string File::getBasename() const { -#if !defined(ANDROID) && defined(HAVE_FEATURES_H) - return std::string(basename(_path.c_str())); -#else - char path[_path.length()+1]; - ::memcpy(&path, _path.c_str(), _path.length()+1); - - return std::string(basename(path)); -#endif + size_t found = _path.find_last_of('/'); + if (found != std::string::npos) + return _path.substr(found + 1); + else + return _path; } File File::get(const std::string &filename) const