diff --git a/meson.build b/meson.build
--- a/meson.build
+++ b/meson.build
@@ -723,6 +723,10 @@ if host_system == 'emscripten'
     '-sASYNCIFY',
     '-sASYNCIFY_STACK_SIZE=8388608',
     '-sALLOW_MEMORY_GROWTH=1',
+    # Emscripten 6.0.2 enables resizable buffers by default, but browser
+    # TextDecoder implementations do not consistently accept their views.
+    # Keep memory growth while using ordinary ArrayBuffers between grows.
+    '-sGROWABLE_ARRAYBUFFERS=0',
     '-sINITIAL_MEMORY=268435456',
     '-sMAXIMUM_MEMORY=2147483648',
     '-sSTACK_SIZE=8388608',
