From 67ac0e5eeef5a3af7e858c1cf6d4b2be15c3d223 Mon Sep 17 00:00:00 2001
From: Petar Popovic <[EMAIL REDACTED]>
Date: Sat, 7 Mar 2026 15:54:03 +0100
Subject: [PATCH] SDL_InternalGlobDirectory(): set string length of base
directory to 1, if it's just one slash
---
src/filesystem/SDL_filesystem.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/filesystem/SDL_filesystem.c b/src/filesystem/SDL_filesystem.c
index 8180b18fcdbb5..6a52baf28bc53 100644
--- a/src/filesystem/SDL_filesystem.c
+++ b/src/filesystem/SDL_filesystem.c
@@ -426,8 +426,15 @@ char **SDL_InternalGlobDirectory(const char *path, const char *pattern, SDL_Glob
data.enumerator = enumerator;
data.getpathinfo = getpathinfo;
data.fsuserdata = userdata;
- data.basedirlen = *path ? (pathlen + 1) : 0; // +1 for the '/' we'll be adding.
+ data.basedirlen = 0;
+ if (*path) {
+ if (SDL_strcmp(path, "/") == 0 || SDL_strcmp(path, "\\") == 0) {
+ data.basedirlen = 1;
+ } else {
+ data.basedirlen = pathlen + 1; // +1 for the '/' we'll be adding.
+ }
+ }
char **result = NULL;
if (data.enumerator(path, GlobDirectoryCallback, &data, data.fsuserdata)) {