SDL_image: Fixed freeing memory for JXL images

From b852bcbdecac6a6e71a5570ac1cd2819d1aee8b3 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Sun, 8 May 2022 21:32:03 -0700
Subject: [PATCH] Fixed freeing memory for JXL images

---
 IMG_jxl.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/IMG_jxl.c b/IMG_jxl.c
index 0e51d3e..6543421 100644
--- a/IMG_jxl.c
+++ b/IMG_jxl.c
@@ -210,6 +210,11 @@ SDL_Surface *IMG_LoadJXL_RW(SDL_RWops *src)
         case JXL_DEC_SUCCESS:
             /* All done! */
             surface = SDL_CreateRGBSurfaceWithFormatFrom(pixels, info.xsize, info.ysize, 0, pitch, SDL_PIXELFORMAT_RGBA32);
+            if (surface) {
+                /* Let SDL manage the memory now */
+                pixels = NULL;
+                surface->flags &= ~SDL_PREALLOC;
+            }
             goto done;
         default:
             IMG_SetError("Unknown JXL decoding status: %d", status);