Ensure directory enumeration works whether there's a path seperator at the end of the directory or not

This commit is contained in:
Simon Robertshaw
2012-11-18 18:02:28 +00:00
parent 0be465aa4e
commit af29942117
2 changed files with 7 additions and 0 deletions

View File

@@ -11,8 +11,10 @@
#ifdef WIN #ifdef WIN
#define PATH_SEP "\\" #define PATH_SEP "\\"
#define PATH_SEP_CHAR '\\'
#else #else
#define PATH_SEP "/" #define PATH_SEP "/"
#define PATH_SEP_CHAR '/'
#endif #endif
//VersionInfoStart //VersionInfoStart
@@ -89,6 +91,8 @@
#define STAMPS_DIR "stamps" #define STAMPS_DIR "stamps"
#define BRUSH_DIR "Brushes"
#define APPDATA_SUBDIR "\\HardWIRED" #define APPDATA_SUBDIR "\\HardWIRED"
//Number of unique thumbnails to have in cache at one time //Number of unique thumbnails to have in cache at one time

View File

@@ -367,6 +367,9 @@ std::vector<std::string> Client::DirectorySearch(std::string directory, std::str
std::vector<std::string> Client::DirectorySearch(std::string directory, std::string search, std::vector<std::string> extensions) std::vector<std::string> Client::DirectorySearch(std::string directory, std::string search, std::vector<std::string> extensions)
{ {
//Get full file listing //Get full file listing
//Normalise directory string, ensure / or \ is present
if(*directory.rbegin() != '/' && *directory.rbegin() != '\\')
directory += PATH_SEP;
std::vector<std::string> directoryList; std::vector<std::string> directoryList;
#if defined(WIN) && !defined(__GNUC__) #if defined(WIN) && !defined(__GNUC__)
//Windows //Windows