From ac75a4f020aa33fa770c01dfed038a05294ffcd4 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Mon, 25 May 2026 13:35:46 +0200
Subject: [PATCH] _uitoa does not exist
(cherry picked from commit 08e338f45c583ad0af3169bf2cc31260b1a5d91b)
(cherry picked from commit 452348acf8d682adca0ba04e0795826dfde81824)
---
CMakeLists.txt | 2 +-
cmake/PreseedEmscriptenCache.cmake | 1 -
cmake/PreseedMSVCCache.cmake | 1 -
include/build_config/SDL_build_config.h.cmake | 1 -
src/stdlib/SDL_string.c | 14 +++++---------
5 files changed, 6 insertions(+), 13 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 31e6c1985b30e..06237e1422c0f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1042,7 +1042,7 @@ if(SDL_LIBC)
)
if(WINDOWS)
list(APPEND symbols_to_check
- _copysign _fseeki64 _strrev _ui64toa _uitoa _ultoa _wcsdup
+ _copysign _fseeki64 _strrev _ui64toa _ultoa _wcsdup
)
else()
list(APPEND symbols_to_check
diff --git a/cmake/PreseedEmscriptenCache.cmake b/cmake/PreseedEmscriptenCache.cmake
index 5a34ab5ac21f4..f015cc8f7ec4f 100644
--- a/cmake/PreseedEmscriptenCache.cmake
+++ b/cmake/PreseedEmscriptenCache.cmake
@@ -131,7 +131,6 @@ if(EMSCRIPTEN)
set(LIBC_HAS__LTOA "" CACHE INTERNAL "Have symbol _ltoa")
set(LIBC_HAS__STRREV "" CACHE INTERNAL "Have symbol _strrev")
set(LIBC_HAS__UI64TOA "" CACHE INTERNAL "Have symbol _ui64toa")
- set(LIBC_HAS__UITOA "" CACHE INTERNAL "Have symbol _uitoa")
set(LIBC_HAS__ULTOA "" CACHE INTERNAL "Have symbol _ultoa")
set(LIBC_HAS__WCSDUP "" CACHE INTERNAL "Have symbol _wcsdup")
set(LIBC_IS_GLIBC "" CACHE INTERNAL "Have symbol __GLIBC__")
diff --git a/cmake/PreseedMSVCCache.cmake b/cmake/PreseedMSVCCache.cmake
index 17495aa480aba..1756c73c5eb45 100644
--- a/cmake/PreseedMSVCCache.cmake
+++ b/cmake/PreseedMSVCCache.cmake
@@ -144,7 +144,6 @@ if(MSVC)
set(LIBC_HAS__LTOA "1" CACHE INTERNAL "Have symbol _ltoa")
set(LIBC_HAS__STRREV "1" CACHE INTERNAL "Have symbol _strrev")
set(LIBC_HAS__UI64TOA "1" CACHE INTERNAL "Have symbol _ui64toa")
- set(LIBC_HAS__UITOA "" CACHE INTERNAL "Have symbol _uitoa")
set(LIBC_HAS__ULTOA "1" CACHE INTERNAL "Have symbol _ultoa")
set(LIBC_HAS__WCSDUP "1" CACHE INTERNAL "Have symbol _wcsdup")
set(LIBC_IS_GLIBC "" CACHE INTERNAL "Have symbol __GLIBC__")
diff --git a/include/build_config/SDL_build_config.h.cmake b/include/build_config/SDL_build_config.h.cmake
index 6a98d41edec3b..27643aad3ee71 100644
--- a/include/build_config/SDL_build_config.h.cmake
+++ b/include/build_config/SDL_build_config.h.cmake
@@ -101,7 +101,6 @@
#cmakedefine HAVE_STRTOK_R 1
#cmakedefine HAVE_ITOA 1
#cmakedefine HAVE__LTOA 1
-#cmakedefine HAVE__UITOA 1
#cmakedefine HAVE__ULTOA 1
#cmakedefine HAVE_STRTOL 1
#cmakedefine HAVE_STRTOUL 1
diff --git a/src/stdlib/SDL_string.c b/src/stdlib/SDL_string.c
index 79679a1f44405..6d4e3c98229b8 100644
--- a/src/stdlib/SDL_string.c
+++ b/src/stdlib/SDL_string.c
@@ -1151,6 +1151,11 @@ static const char ntoa_table[] = {
};
#endif // ntoa() conversion table
+char *SDL_uitoa(unsigned int value, char *string, int radix)
+{
+ return SDL_ultoa((unsigned long)value, string, radix);
+}
+
char *SDL_itoa(int value, char *string, int radix)
{
#ifdef HAVE_ITOA
@@ -1160,15 +1165,6 @@ char *SDL_itoa(int value, char *string, int radix)
#endif // HAVE_ITOA
}
-char *SDL_uitoa(unsigned int value, char *string, int radix)
-{
-#ifdef HAVE__UITOA
- return _uitoa(value, string, radix);
-#else
- return SDL_ultoa((unsigned long)value, string, radix);
-#endif // HAVE__UITOA
-}
-
char *SDL_ltoa(long value, char *string, int radix)
{
#ifdef HAVE__LTOA