From 33223d1169f56cad5394b8ed6f9d20a46939ac3d Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Fri, 30 Jan 2026 20:01:21 -0800 Subject: [PATCH 1/3] miniaudio: fix submodule commit --- 3rdparty/miniaudio | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/3rdparty/miniaudio b/3rdparty/miniaudio index 347321b2..13d161bc 160000 --- a/3rdparty/miniaudio +++ b/3rdparty/miniaudio @@ -1 +1 @@ -Subproject commit 347321b27c58d42567e905c715de60ad43a6cb8e +Subproject commit 13d161bc8d856ad61ae46b798bbeffc0f49808e8 From f274f1b2129f3a693a4ef551d5b80ce39954a4d4 Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Fri, 30 Jan 2026 20:59:19 -0800 Subject: [PATCH 2/3] Fix Emscripten rendering after SDL3 window size change (#776) SDL3 commit 1a27b5b838f added code that overwrites window dimensions with CSS values when external_size is detected. This broke rendering because the window was created with browser dimensions instead of the requested 640x480. Force the correct window size immediately after creation to ensure the renderer initializes with the proper dimensions. --- ISLE/isleapp.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ISLE/isleapp.cpp b/ISLE/isleapp.cpp index 1df09cd8..8135b957 100644 --- a/ISLE/isleapp.cpp +++ b/ISLE/isleapp.cpp @@ -948,6 +948,12 @@ MxResult IsleApp::SetupWindow() #endif window = SDL_CreateWindowWithProperties(props); + +#ifdef __EMSCRIPTEN__ + // Force correct window size since SDL3 may have picked up CSS dimensions + SDL_SetWindowSize(window, g_targetWidth, g_targetHeight); +#endif + SDL_SetPointerProperty(SDL_GetWindowProperties(window), ISLE_PROP_WINDOW_CREATE_VIDEO_PARAM, &m_videoParam); if (m_exclusiveFullScreen && m_fullScreen) { From 4048e741bb73da1bee4c8260a4ceaa41b0f7ff4d Mon Sep 17 00:00:00 2001 From: Anonymous Maarten Date: Sat, 31 Jan 2026 06:09:01 +0100 Subject: [PATCH 3/3] TextureLoader: unlock surface on failure paths (#775) --- extensions/src/textureloader.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/extensions/src/textureloader.cpp b/extensions/src/textureloader.cpp index 73f42ad8..d46485e1 100644 --- a/extensions/src/textureloader.cpp +++ b/extensions/src/textureloader.cpp @@ -64,6 +64,7 @@ bool TextureLoader::PatchTexture(LegoTextureInfo* p_textureInfo) if (details->bits_per_pixel == 8) { SDL_Palette* sdlPalette = SDL_GetSurfacePalette(surface); if (!sdlPalette) { + p_textureInfo->m_surface->Unlock(desc.lpSurface); SDL_DestroySurface(surface); return false; } @@ -78,6 +79,7 @@ bool TextureLoader::PatchTexture(LegoTextureInfo* p_textureInfo) LPDIRECTDRAWPALETTE ddPalette = nullptr; if (pDirectDraw->CreatePalette(DDPCAPS_8BIT | DDPCAPS_ALLOW256, entries, &ddPalette, NULL) != DD_OK) { + p_textureInfo->m_surface->Unlock(desc.lpSurface); SDL_DestroySurface(surface); return false; }