From 38f971bac50fd79f0105faa660bbbc4c1a4341ee Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Thu, 26 Sep 2024 16:35:15 -0400 Subject: [PATCH] filesystem: SDL_SYS_EnumerateDirectory() now returns bool. --- src/filesystem/SDL_filesystem.c | 5 +---- src/filesystem/SDL_sysfilesystem.h | 2 +- src/filesystem/dummy/SDL_sysfsops.c | 5 ++--- src/filesystem/posix/SDL_sysfsops.c | 4 ++-- src/filesystem/windows/SDL_sysfsops.c | 4 ++-- 5 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/filesystem/SDL_filesystem.c b/src/filesystem/SDL_filesystem.c index 69056148ea..1ceb007f42 100644 --- a/src/filesystem/SDL_filesystem.c +++ b/src/filesystem/SDL_filesystem.c @@ -69,10 +69,7 @@ bool SDL_EnumerateDirectory(const char *path, SDL_EnumerateDirectoryCallback cal } else if (!callback) { return SDL_InvalidParamError("callback"); } - if (SDL_SYS_EnumerateDirectory(path, path, callback, userdata) < 0) { - return false; - } - return true; + return SDL_SYS_EnumerateDirectory(path, 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 c35035bce3..e0fe9c604b 100644 --- a/src/filesystem/SDL_sysfilesystem.h +++ b/src/filesystem/SDL_sysfilesystem.h @@ -27,7 +27,7 @@ extern char *SDL_SYS_GetBasePath(void); extern char *SDL_SYS_GetPrefPath(const char *org, const char *app); extern char *SDL_SYS_GetUserFolder(SDL_Folder folder); -extern int SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata); +extern bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, 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 f1acdfd07c..a7c40fe0bd 100644 --- a/src/filesystem/dummy/SDL_sysfsops.c +++ b/src/filesystem/dummy/SDL_sysfsops.c @@ -28,10 +28,9 @@ #include "../SDL_sysfilesystem.h" -int SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) +bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) { - SDL_Unsupported(); - return -1; + return SDL_Unsupported(); } bool SDL_SYS_RemovePath(const char *path) diff --git a/src/filesystem/posix/SDL_sysfsops.c b/src/filesystem/posix/SDL_sysfsops.c index 9b1d963dfb..ff04b2c8bc 100644 --- a/src/filesystem/posix/SDL_sysfsops.c +++ b/src/filesystem/posix/SDL_sysfsops.c @@ -34,7 +34,7 @@ #include #include -int SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) +bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) { int result = 1; @@ -56,7 +56,7 @@ int SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_Enumer closedir(dir); - return result; + return (result >= 0); } bool SDL_SYS_RemovePath(const char *path) diff --git a/src/filesystem/windows/SDL_sysfsops.c b/src/filesystem/windows/SDL_sysfsops.c index 29aa4e7992..743eca681d 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" -int SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) +bool SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_EnumerateDirectoryCallback cb, void *userdata) { int result = 1; if (*path == '\0') { // if empty (completely at the root), we need to enumerate drive letters. @@ -88,7 +88,7 @@ int SDL_SYS_EnumerateDirectory(const char *path, const char *dirname, SDL_Enumer FindClose(dir); } - return result; + return (result >= 0); } bool SDL_SYS_RemovePath(const char *path)