SDL: fix error handling in WideCharToMultiByte

From ead32c706dc917bf206e96e9d427c80859f4ee53 Mon Sep 17 00:00:00 2001
From: kyle-sylvestre <[EMAIL REDACTED]>
Date: Thu, 22 May 2025 15:55:53 -0400
Subject: [PATCH] fix error handling in WideCharToMultiByte

---
 src/dialog/windows/SDL_windowsdialog.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/dialog/windows/SDL_windowsdialog.c b/src/dialog/windows/SDL_windowsdialog.c
index d3cb8a27d1399..364753cfdfaa4 100644
--- a/src/dialog/windows/SDL_windowsdialog.c
+++ b/src/dialog/windows/SDL_windowsdialog.c
@@ -261,7 +261,7 @@ void windows_ShowFileDialog(void *ptr)
 
             chosen_files_list[nfiles] = NULL;
 
-            if (WideCharToMultiByte(CP_UTF8, 0, file_ptr, -1, chosen_folder, MAX_PATH, NULL, NULL) >= MAX_PATH) {
+            if (WideCharToMultiByte(CP_UTF8, 0, file_ptr, -1, chosen_folder, MAX_PATH, NULL, NULL) == 0) {
                 SDL_SetError("Path too long or invalid character in path");
                 SDL_free(chosen_files_list);
                 callback(userdata, NULL, -1);
@@ -295,7 +295,7 @@ void windows_ShowFileDialog(void *ptr)
 
                 int diff = ((int) chosen_folder_size) + 1;
 
-                if (WideCharToMultiByte(CP_UTF8, 0, file_ptr, -1, chosen_file + diff, MAX_PATH - diff, NULL, NULL) >= MAX_PATH - diff) {
+                if (WideCharToMultiByte(CP_UTF8, 0, file_ptr, -1, chosen_file + diff, MAX_PATH - diff, NULL, NULL) == 0) {
                     SDL_SetError("Path too long or invalid character in path");
 
                     for (size_t i = 0; i < nfiles - 1; i++) {