From 3f29d985fe4876636b8ce8f3d3d0881e5822b365 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Wed, 17 Apr 2024 07:47:29 -0700 Subject: [PATCH] Fixed compilation with C89 (thanks @d-s-a!) Closes https://github.com/libsdl-org/SDL/pull/9564 (cherry picked from commit 4e29be814e2a67992e7487b2b1814e37ff4c6980) --- src/video/kmsdrm/SDL_kmsdrmvideo.c | 3 ++- src/video/wayland/SDL_waylandevents.c | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/video/kmsdrm/SDL_kmsdrmvideo.c b/src/video/kmsdrm/SDL_kmsdrmvideo.c index 69033b0e74127..bdcd2207adea6 100644 --- a/src/video/kmsdrm/SDL_kmsdrmvideo.c +++ b/src/video/kmsdrm/SDL_kmsdrmvideo.c @@ -77,6 +77,7 @@ static int get_driindex(void) int devindex = -1; DIR *folder; const char *hint; + struct dirent *res; hint = SDL_GetHint(SDL_HINT_KMSDRM_DEVICE_INDEX); if (hint && *hint) { @@ -96,7 +97,7 @@ static int get_driindex(void) SDL_strlcpy(device + kmsdrm_dri_pathsize, kmsdrm_dri_devname, sizeof(device) - kmsdrm_dri_devnamesize); - for (struct dirent *res; (res = readdir(folder));) { + while((res = readdir(folder)) != NULL) { if (SDL_memcmp(res->d_name, kmsdrm_dri_devname, kmsdrm_dri_devnamesize) == 0) { SDL_strlcpy(device + kmsdrm_dri_pathsize + kmsdrm_dri_devnamesize, diff --git a/src/video/wayland/SDL_waylandevents.c b/src/video/wayland/SDL_waylandevents.c index a5105a2fc6271..9e9c3934022b1 100644 --- a/src/video/wayland/SDL_waylandevents.c +++ b/src/video/wayland/SDL_waylandevents.c @@ -1166,7 +1166,8 @@ static void keyboard_handle_enter(void *data, struct wl_keyboard *keyboard, const SDL_Scancode scancode = Wayland_get_scancode_from_key(input, *key + 8); if (scancode != SDL_SCANCODE_UNKNOWN) { - for (uint32_t i = 0; i < SDL_arraysize(mod_scancodes); ++i) { + uint32_t i; + for (i = 0; i < SDL_arraysize(mod_scancodes); ++i) { if (mod_scancodes[i] == scancode) { SDL_SendKeyboardKey(SDL_PRESSED, scancode); break; @@ -1814,7 +1815,8 @@ static void data_device_handle_drop(void *data, struct wl_data_device *wl_data_d char **paths = SDL_DBus_DocumentsPortalRetrieveFiles(buffer, &path_count); /* If dropped files contain a directory the list is empty */ if (paths && path_count > 0) { - for (int i = 0; i < path_count; i++) { + int i; + for (i = 0; i < path_count; i++) { SDL_SendDropFile(data_device->dnd_window, paths[i]); } dbus->free_string_array(paths);