From a7a8e69b0479a1cf059fb79d249fe06012fa46e8 Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Mon, 10 Jul 2023 00:15:02 +0300
Subject: [PATCH] update after RWFromMem and RWFromConstMem size parameter
change in SDL3
---
src/sdl2_compat.c | 8 ++++++++
src/sdl3_syms.h | 4 ++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/sdl2_compat.c b/src/sdl2_compat.c
index 2201c3e..9d50ca5 100644
--- a/src/sdl2_compat.c
+++ b/src/sdl2_compat.c
@@ -1806,12 +1806,20 @@ SDL_RWFromFile(const char *file, const char *mode)
DECLSPEC SDL2_RWops *SDLCALL
SDL_RWFromMem(void *mem, int size)
{
+ if (size < 0) { /* SDL3 already checks size == 0 */
+ SDL3_InvalidParamError("size");
+ return NULL;
+ }
return RWops3to2(SDL3_RWFromMem(mem, size));
}
DECLSPEC SDL2_RWops *SDLCALL
SDL_RWFromConstMem(const void *mem, int size)
{
+ if (size < 0) { /* SDL3 already checks size == 0 */
+ SDL3_InvalidParamError("size");
+ return NULL;
+ }
return RWops3to2(SDL3_RWFromConstMem(mem, size));
}
diff --git a/src/sdl3_syms.h b/src/sdl3_syms.h
index d0d7b53..2070edb 100644
--- a/src/sdl3_syms.h
+++ b/src/sdl3_syms.h
@@ -332,8 +332,8 @@ SDL3_SYM(void,DestroyRenderer,(SDL_Renderer *a),(a),)
SDL3_SYM_PASSTHROUGH(int,GL_BindTexture,(SDL_Texture *a, float *b, float *c),(a,b,c),return)
SDL3_SYM_PASSTHROUGH(int,GL_UnbindTexture,(SDL_Texture *a),(a),return)
SDL3_SYM(SDL_RWops*,RWFromFile,(const char *a, const char *b),(a,b),return)
-SDL3_SYM(SDL_RWops*,RWFromMem,(void *a, int b),(a,b),return)
-SDL3_SYM(SDL_RWops*,RWFromConstMem,(const void *a, int b),(a,b),return)
+SDL3_SYM(SDL_RWops*,RWFromMem,(void *a, size_t b),(a,b),return)
+SDL3_SYM(SDL_RWops*,RWFromConstMem,(const void *a, size_t b),(a,b),return)
SDL3_SYM(SDL_RWops*,CreateRW,(void),(),return)
SDL3_SYM(void,DestroyRW,(SDL_RWops *a),(a),)
SDL3_SYM(Uint8,ReadU8,(SDL_RWops *a),(a),return)