From 845f3c74507db8c0c400bac005025c887bae2839 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Wed, 23 Aug 2023 14:48:44 -0700 Subject: [PATCH] Fixed mismatch between stdlib calloc() and SDL free() Fixes https://github.com/libsdl-org/SDL/issues/8145 --- src/hidapi/SDL_hidapi_libusb.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/hidapi/SDL_hidapi_libusb.h b/src/hidapi/SDL_hidapi_libusb.h index 80ea0aff33..456a4bf16c 100644 --- a/src/hidapi/SDL_hidapi_libusb.h +++ b/src/hidapi/SDL_hidapi_libusb.h @@ -23,6 +23,7 @@ /* #pragma push_macro/pop_macro works correctly only as of gcc >= 4.4.3 clang-3.0 _seems_ to be OK. */ +#pragma push_macro("calloc") #pragma push_macro("malloc") #pragma push_macro("realloc") #pragma push_macro("free") @@ -38,6 +39,7 @@ #pragma push_macro("tolower") #pragma push_macro("wcsdup") +#undef calloc #undef malloc #undef realloc #undef free @@ -53,6 +55,7 @@ #undef tolower #undef wcsdup +#define calloc SDL_calloc #define malloc SDL_malloc #define realloc SDL_realloc #define free SDL_free @@ -106,6 +109,7 @@ static int SDL_libusb_get_string_descriptor(libusb_device_handle *dev, #undef ICONV_CONST #undef UNDEF_ICONV_CONST #endif +#pragma pop_macro("calloc") #pragma pop_macro("malloc") #pragma pop_macro("realloc") #pragma pop_macro("free")