diff --git a/src/filesystem/SDL_filesystem.c b/src/filesystem/SDL_filesystem.c index e3066f2bef..6bb905a0b8 100644 --- a/src/filesystem/SDL_filesystem.c +++ b/src/filesystem/SDL_filesystem.c @@ -121,7 +121,7 @@ bool SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback cal } else if (!callback) { return SDL_InvalidParamError("callback"); } - return SDL_SYS_EnumerateDirectory(path, path, callback, userdata); + return SDL_SYS_EnumerateDirectory(path, callback, userdata); } bool SDL_GetPathInfo(const char *path, SDL_PathInfo *info) diff --git a/src/filesystem/SDL_sysfilesystem.h b/src/filesystem/SDL_sysfilesystem.h index 10ca00504c..f9f4c592a0 100644 --- a/src/filesystem/SDL_sysfilesystem.h +++ b/src/filesystem/SDL_sysfilesystem.h @@ -28,7 +28,7 @@ extern char *SDL_SYS_GetPrefPath(const char *org, const char *app); extern char *SDL_SYS_GetUserFolder(SDL_Folder folder); extern char *SDL_SYS_GetCurrentDirectory(void); -extern bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata); +extern bool SDL_SYS_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback cb, void *userdata); extern bool SDL_SYS_RemovePath(const char *path); extern bool SDL_SYS_RenamePath(const char *oldpath, const char *newpath); extern bool SDL_SYS_CopyFile(const char *oldpath, const char *newpath); diff --git a/src/filesystem/dummy/SDL_sysfsops.c b/src/filesystem/dummy/SDL_sysfsops.c index 606202d18a..d8553e91e7 100644 --- a/src/filesystem/dummy/SDL_sysfsops.c +++ b/src/filesystem/dummy/SDL_sysfsops.c @@ -28,7 +28,7 @@ #include "../SDL_sysfilesystem.h" -bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) +bool SDL_SYS_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback cb, void *userdata) { return SDL_Unsupported(); } diff --git a/src/filesystem/posix/SDL_sysfsops.c b/src/filesystem/posix/SDL_sysfsops.c index b16c724058..0658b8f155 100644 --- a/src/filesystem/posix/SDL_sysfsops.c +++ b/src/filesystem/posix/SDL_sysfsops.c @@ -35,7 +35,7 @@ #include #include -bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) +bool SDL_SYS_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback cb, void *userdata) { SDL_EnumerationResult result = SDL_ENUM_CONTINUE; @@ -51,7 +51,7 @@ bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_Enume if ((SDL_strcmp(name, ".") == 0) || (SDL_strcmp(name, "..") == 0)) { continue; } - result = cb(userdata, dirname, name); + result = cb(userdata, path, name); } closedir(dir); diff --git a/src/filesystem/windows/SDL_sysfsops.c b/src/filesystem/windows/SDL_sysfsops.c index 1c4fe5a99e..89961c6a8f 100644 --- a/src/filesystem/windows/SDL_sysfsops.c +++ b/src/filesystem/windows/SDL_sysfsops.c @@ -29,7 +29,7 @@ #include "../../core/windows/SDL_windows.h" #include "../SDL_sysfilesystem.h" -bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) +bool SDL_SYS_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback cb, void *userdata) { SDL_EnumerationResult result = SDL_ENUM_CONTINUE; if (*path == '\0') { // if empty (completely at the root), we need to enumerate drive letters. @@ -38,7 +38,7 @@ bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_Enume for (int i = 'A'; (result == SDL_ENUM_CONTINUE) && (i <= 'Z'); i++) { if (drives & (1 << (i - 'A'))) { name[0] = (char) i; - result = cb(userdata, dirname, name); + result = cb(userdata, path, name); } } } else { @@ -79,7 +79,7 @@ bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_Enume if (!utf8fn) { result = SDL_ENUM_FAILURE; } else { - result = cb(userdata, dirname, utf8fn); + result = cb(userdata, path, utf8fn); SDL_free(utf8fn); } } while ((result == SDL_ENUM_CONTINUE) && (FindNextFileW(dir, &entw) != 0));