diff --git a/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h b/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h
index 321b59d79a17b11ec71cbb589822ebed509ce4ed..47d28a410145e3207b5dfc9c7909226a98977c51 100644
--- a/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h
+++ b/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h
@@ -1,43 +1,43 @@
-
-#ifndef JXL_CMS_EXPORT_H
-#define JXL_CMS_EXPORT_H
-
-#ifdef JXL_CMS_STATIC_DEFINE
-#  define JXL_CMS_EXPORT
-#  define JXL_CMS_NO_EXPORT
-#else
-#  ifndef JXL_CMS_EXPORT
-#    ifdef jxl_cms_EXPORTS
-        /* We are building this library */
-#      define JXL_CMS_EXPORT __declspec(dllexport)
-#    else
-        /* We are using this library */
-#      define JXL_CMS_EXPORT __declspec(dllimport)
-#    endif
-#  endif
-
-#  ifndef JXL_CMS_NO_EXPORT
-#    define JXL_CMS_NO_EXPORT 
-#  endif
-#endif
-
-#ifndef JXL_CMS_DEPRECATED
-#  define JXL_CMS_DEPRECATED __declspec(deprecated)
-#endif
-
-#ifndef JXL_CMS_DEPRECATED_EXPORT
-#  define JXL_CMS_DEPRECATED_EXPORT JXL_CMS_EXPORT JXL_CMS_DEPRECATED
-#endif
-
-#ifndef JXL_CMS_DEPRECATED_NO_EXPORT
-#  define JXL_CMS_DEPRECATED_NO_EXPORT JXL_CMS_NO_EXPORT JXL_CMS_DEPRECATED
-#endif
-
-/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */
-#if 0 /* DEFINE_NO_DEPRECATED */
-#  ifndef JXL_CMS_NO_DEPRECATED
-#    define JXL_CMS_NO_DEPRECATED
-#  endif
-#endif
-
-#endif /* JXL_CMS_EXPORT_H */
+
+#ifndef JXL_CMS_EXPORT_H
+#define JXL_CMS_EXPORT_H
+
+#ifdef JXL_CMS_STATIC_DEFINE
+#  define JXL_CMS_EXPORT
+#  define JXL_CMS_NO_EXPORT
+#else
+#  ifndef JXL_CMS_EXPORT
+#    ifdef jxl_cms_EXPORTS
+        /* We are building this library */
+#      define JXL_CMS_EXPORT 
+#    else
+        /* We are using this library */
+#      define JXL_CMS_EXPORT 
+#    endif
+#  endif
+
+#  ifndef JXL_CMS_NO_EXPORT
+#    define JXL_CMS_NO_EXPORT 
+#  endif
+#endif
+
+#ifndef JXL_CMS_DEPRECATED
+#  define JXL_CMS_DEPRECATED __declspec(deprecated)
+#endif
+
+#ifndef JXL_CMS_DEPRECATED_EXPORT
+#  define JXL_CMS_DEPRECATED_EXPORT JXL_CMS_EXPORT JXL_CMS_DEPRECATED
+#endif
+
+#ifndef JXL_CMS_DEPRECATED_NO_EXPORT
+#  define JXL_CMS_DEPRECATED_NO_EXPORT JXL_CMS_NO_EXPORT JXL_CMS_DEPRECATED
+#endif
+
+/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */
+#if 0 /* DEFINE_NO_DEPRECATED */
+#  ifndef JXL_CMS_NO_DEPRECATED
+#    define JXL_CMS_NO_DEPRECATED
+#  endif
+#endif
+
+#endif /* JXL_CMS_EXPORT_H */
diff --git a/3rdp/win32.release/libjxl/include/jxl/jxl_export.h b/3rdp/win32.release/libjxl/include/jxl/jxl_export.h
index 435f2e1e6f710cfb3952cd1b974190ee9dbce9c2..36966a7ab7e3ea83d62cbaa1fb611add6cfac724 100644
--- a/3rdp/win32.release/libjxl/include/jxl/jxl_export.h
+++ b/3rdp/win32.release/libjxl/include/jxl/jxl_export.h
@@ -1,43 +1,43 @@
-
-#ifndef JXL_EXPORT_H
-#define JXL_EXPORT_H
-
-#ifdef JXL_STATIC_DEFINE
-#  define JXL_EXPORT
-#  define JXL_NO_EXPORT
-#else
-#  ifndef JXL_EXPORT
-#    ifdef JXL_INTERNAL_LIBRARY_BUILD
-        /* We are building this library */
-#      define JXL_EXPORT __declspec(dllexport)
-#    else
-        /* We are using this library */
-#      define JXL_EXPORT __declspec(dllimport)
-#    endif
-#  endif
-
-#  ifndef JXL_NO_EXPORT
-#    define JXL_NO_EXPORT 
-#  endif
-#endif
-
-#ifndef JXL_DEPRECATED
-#  define JXL_DEPRECATED __declspec(deprecated)
-#endif
-
-#ifndef JXL_DEPRECATED_EXPORT
-#  define JXL_DEPRECATED_EXPORT JXL_EXPORT JXL_DEPRECATED
-#endif
-
-#ifndef JXL_DEPRECATED_NO_EXPORT
-#  define JXL_DEPRECATED_NO_EXPORT JXL_NO_EXPORT JXL_DEPRECATED
-#endif
-
-/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */
-#if 0 /* DEFINE_NO_DEPRECATED */
-#  ifndef JXL_NO_DEPRECATED
-#    define JXL_NO_DEPRECATED
-#  endif
-#endif
-
-#endif /* JXL_EXPORT_H */
+
+#ifndef JXL_EXPORT_H
+#define JXL_EXPORT_H
+
+#ifdef JXL_STATIC_DEFINE
+#  define JXL_EXPORT
+#  define JXL_NO_EXPORT
+#else
+#  ifndef JXL_EXPORT
+#    ifdef JXL_INTERNAL_LIBRARY_BUILD
+        /* We are building this library */
+#      define JXL_EXPORT __declspec(dllexport)
+#    else
+        /* We are using this library */
+#      define JXL_EXPORT __declspec(dllimport)
+#    endif
+#  endif
+
+#  ifndef JXL_NO_EXPORT
+#    define JXL_NO_EXPORT 
+#  endif
+#endif
+
+#ifndef JXL_DEPRECATED
+#  define JXL_DEPRECATED __declspec(deprecated)
+#endif
+
+#ifndef JXL_DEPRECATED_EXPORT
+#  define JXL_DEPRECATED_EXPORT JXL_EXPORT JXL_DEPRECATED
+#endif
+
+#ifndef JXL_DEPRECATED_NO_EXPORT
+#  define JXL_DEPRECATED_NO_EXPORT JXL_NO_EXPORT JXL_DEPRECATED
+#endif
+
+/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */
+#if 0 /* DEFINE_NO_DEPRECATED */
+#  ifndef JXL_NO_DEPRECATED
+#    define JXL_NO_DEPRECATED
+#  endif
+#endif
+
+#endif /* JXL_EXPORT_H */
diff --git a/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h b/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h
index d0c400be01b02eb0e5b40c477eed827309bc9e05..46b7815e497e12fe9a65f5ee48fb915c16cf07fb 100644
--- a/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h
+++ b/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h
@@ -1,43 +1,43 @@
-
-#ifndef JXL_THREADS_EXPORT_H
-#define JXL_THREADS_EXPORT_H
-
-#ifdef JXL_THREADS_STATIC_DEFINE
-#  define JXL_THREADS_EXPORT
-#  define JXL_THREADS_NO_EXPORT
-#else
-#  ifndef JXL_THREADS_EXPORT
-#    ifdef JXL_THREADS_INTERNAL_LIBRARY_BUILD
-        /* We are building this library */
-#      define JXL_THREADS_EXPORT __declspec(dllexport)
-#    else
-        /* We are using this library */
-#      define JXL_THREADS_EXPORT __declspec(dllimport)
-#    endif
-#  endif
-
-#  ifndef JXL_THREADS_NO_EXPORT
-#    define JXL_THREADS_NO_EXPORT 
-#  endif
-#endif
-
-#ifndef JXL_THREADS_DEPRECATED
-#  define JXL_THREADS_DEPRECATED __declspec(deprecated)
-#endif
-
-#ifndef JXL_THREADS_DEPRECATED_EXPORT
-#  define JXL_THREADS_DEPRECATED_EXPORT JXL_THREADS_EXPORT JXL_THREADS_DEPRECATED
-#endif
-
-#ifndef JXL_THREADS_DEPRECATED_NO_EXPORT
-#  define JXL_THREADS_DEPRECATED_NO_EXPORT JXL_THREADS_NO_EXPORT JXL_THREADS_DEPRECATED
-#endif
-
-/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */
-#if 0 /* DEFINE_NO_DEPRECATED */
-#  ifndef JXL_THREADS_NO_DEPRECATED
-#    define JXL_THREADS_NO_DEPRECATED
-#  endif
-#endif
-
-#endif /* JXL_THREADS_EXPORT_H */
+
+#ifndef JXL_THREADS_EXPORT_H
+#define JXL_THREADS_EXPORT_H
+
+#ifdef JXL_THREADS_STATIC_DEFINE
+#  define JXL_THREADS_EXPORT
+#  define JXL_THREADS_NO_EXPORT
+#else
+#  ifndef JXL_THREADS_EXPORT
+#    ifdef JXL_THREADS_INTERNAL_LIBRARY_BUILD
+        /* We are building this library */
+#      define JXL_THREADS_EXPORT 
+#    else
+        /* We are using this library */
+#      define JXL_THREADS_EXPORT 
+#    endif
+#  endif
+
+#  ifndef JXL_THREADS_NO_EXPORT
+#    define JXL_THREADS_NO_EXPORT 
+#  endif
+#endif
+
+#ifndef JXL_THREADS_DEPRECATED
+#  define JXL_THREADS_DEPRECATED __declspec(deprecated)
+#endif
+
+#ifndef JXL_THREADS_DEPRECATED_EXPORT
+#  define JXL_THREADS_DEPRECATED_EXPORT JXL_THREADS_EXPORT JXL_THREADS_DEPRECATED
+#endif
+
+#ifndef JXL_THREADS_DEPRECATED_NO_EXPORT
+#  define JXL_THREADS_DEPRECATED_NO_EXPORT JXL_THREADS_NO_EXPORT JXL_THREADS_DEPRECATED
+#endif
+
+/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */
+#if 0 /* DEFINE_NO_DEPRECATED */
+#  ifndef JXL_THREADS_NO_DEPRECATED
+#    define JXL_THREADS_NO_DEPRECATED
+#  endif
+#endif
+
+#endif /* JXL_THREADS_EXPORT_H */
diff --git a/3rdp/win32.release/libjxl/include/jxl/version.h b/3rdp/win32.release/libjxl/include/jxl/version.h
index d84301e5f09862e3164ac598fdb84fc623d0a6f7..74452c7fd0349079d501a67ad0745060ec520247 100644
--- a/3rdp/win32.release/libjxl/include/jxl/version.h
+++ b/3rdp/win32.release/libjxl/include/jxl/version.h
@@ -1,39 +1,39 @@
-/* Copyright (c) the JPEG XL Project Authors. All rights reserved.
- *
- * Use of this source code is governed by a BSD-style
- * license that can be found in the LICENSE file.
- */
-
-/** @addtogroup libjxl_common
- * @{
- * @file version.h
- * @brief libjxl version information
- */
-
-#ifndef JXL_VERSION_H_
-#define JXL_VERSION_H_
-
-#define JPEGXL_MAJOR_VERSION 0 ///< JPEG XL Major version
-#define JPEGXL_MINOR_VERSION 11 ///< JPEG XL Minor version
-#define JPEGXL_PATCH_VERSION 1 ///< JPEG XL Patch version
-
-/** Can be used to conditionally compile code for a specific JXL version
- * @param[maj] major version
- * @param[min] minor version
- *
- * @code
- * #if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0,8,0)
- * // use old/deprecated api
- * #else
- * // use current api
- * #endif
- * @endcode
- */
-#define JPEGXL_COMPUTE_NUMERIC_VERSION(major,minor,patch) (((major)<<24) | ((minor)<<16) | ((patch)<<8) | 0)
-
-/* Numeric representation of the version */
-#define JPEGXL_NUMERIC_VERSION JPEGXL_COMPUTE_NUMERIC_VERSION(JPEGXL_MAJOR_VERSION, JPEGXL_MINOR_VERSION, JPEGXL_PATCH_VERSION)
-
-#endif /* JXL_VERSION_H_ */
-
-/** @}*/
+/* Copyright (c) the JPEG XL Project Authors. All rights reserved.
+ *
+ * Use of this source code is governed by a BSD-style
+ * license that can be found in the LICENSE file.
+ */
+
+/** @addtogroup libjxl_common
+ * @{
+ * @file version.h
+ * @brief libjxl version information
+ */
+
+#ifndef JXL_VERSION_H_
+#define JXL_VERSION_H_
+
+#define JPEGXL_MAJOR_VERSION 0 ///< JPEG XL Major version
+#define JPEGXL_MINOR_VERSION 11 ///< JPEG XL Minor version
+#define JPEGXL_PATCH_VERSION 1 ///< JPEG XL Patch version
+
+/** Can be used to conditionally compile code for a specific JXL version
+ * @param[maj] major version
+ * @param[min] minor version
+ *
+ * @code
+ * #if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0,8,0)
+ * // use old/deprecated api
+ * #else
+ * // use current api
+ * #endif
+ * @endcode
+ */
+#define JPEGXL_COMPUTE_NUMERIC_VERSION(major,minor,patch) (((major)<<24) | ((minor)<<16) | ((patch)<<8) | 0)
+
+/* Numeric representation of the version */
+#define JPEGXL_NUMERIC_VERSION JPEGXL_COMPUTE_NUMERIC_VERSION(JPEGXL_MAJOR_VERSION, JPEGXL_MINOR_VERSION, JPEGXL_PATCH_VERSION)
+
+#endif /* JXL_VERSION_H_ */
+
+/** @}*/
diff --git a/3rdp/win32.release/libjxl/lib/libbrotlicommon.a b/3rdp/win32.release/libjxl/lib/libbrotlicommon.a
index 36a9a1605133fd5ffcf4f1b9eaadbeaa6beac223..cf5d7ca34ae4e8367a0e69b21f10e78e0c7e0260 100644
Binary files a/3rdp/win32.release/libjxl/lib/libbrotlicommon.a and b/3rdp/win32.release/libjxl/lib/libbrotlicommon.a differ
diff --git a/3rdp/win32.release/libjxl/lib/libbrotlidec.a b/3rdp/win32.release/libjxl/lib/libbrotlidec.a
index db4f5d95ed0fc79f83893ac41016225ddd725525..1010b3824be7200e7ce61ce5a489495da187b748 100644
Binary files a/3rdp/win32.release/libjxl/lib/libbrotlidec.a and b/3rdp/win32.release/libjxl/lib/libbrotlidec.a differ
diff --git a/3rdp/win32.release/libjxl/lib/libhwy.a b/3rdp/win32.release/libjxl/lib/libhwy.a
index fa038e0633b83132ca76883e3fa1f8215c4b6351..1f0a1f4f609d65460cfb3ee6fc4e5a2525351c05 100644
Binary files a/3rdp/win32.release/libjxl/lib/libhwy.a and b/3rdp/win32.release/libjxl/lib/libhwy.a differ
diff --git a/3rdp/win32.release/libjxl/lib/libjxl.a b/3rdp/win32.release/libjxl/lib/libjxl.a
index d9b9de7071dc6ec6dd36161cc36820c4f0878d46..2ff6f4cf58a99a2e3f6484d529cba5b055a28386 100644
Binary files a/3rdp/win32.release/libjxl/lib/libjxl.a and b/3rdp/win32.release/libjxl/lib/libjxl.a differ
diff --git a/3rdp/win32.release/libjxl/lib/libjxl_threads.a b/3rdp/win32.release/libjxl/lib/libjxl_threads.a
index 9cbeb136fe17c4c17c2487a1d556d0ed203d2bcb..43711ea71bd7febbbde6ad2d5499d6640d020bbc 100644
Binary files a/3rdp/win32.release/libjxl/lib/libjxl_threads.a and b/3rdp/win32.release/libjxl/lib/libjxl_threads.a differ
diff --git a/3rdp/win64.release/libjxl/lib/libbrotlicommon.a b/3rdp/win64.release/libjxl/lib/libbrotlicommon.a
index 578550b291ca786e41e6d287e442ded5e1f2e289..ec3ae344a385a8ce06b93f0774aa1e74d30ea98b 100644
Binary files a/3rdp/win64.release/libjxl/lib/libbrotlicommon.a and b/3rdp/win64.release/libjxl/lib/libbrotlicommon.a differ
diff --git a/3rdp/win64.release/libjxl/lib/libbrotlidec.a b/3rdp/win64.release/libjxl/lib/libbrotlidec.a
index b0712490c9b0da079bc3b9f6295a1c0a815646e9..c0c05ecb5dc7babf04970ab76920da75da128b4e 100644
Binary files a/3rdp/win64.release/libjxl/lib/libbrotlidec.a and b/3rdp/win64.release/libjxl/lib/libbrotlidec.a differ
diff --git a/3rdp/win64.release/libjxl/lib/libhwy.a b/3rdp/win64.release/libjxl/lib/libhwy.a
index fd13915c0f3c46bb565fe9969a74fa019410b30f..ca206258062728b0f6e0c6a5c7fe350a82e61dd5 100644
Binary files a/3rdp/win64.release/libjxl/lib/libhwy.a and b/3rdp/win64.release/libjxl/lib/libhwy.a differ
diff --git a/3rdp/win64.release/libjxl/lib/libjxl.a b/3rdp/win64.release/libjxl/lib/libjxl.a
index 569699602e9b9d792e58a353f54674544aed4668..33688fc4ba5151ae470faceeed9f9f5cf5b4b3b0 100644
Binary files a/3rdp/win64.release/libjxl/lib/libjxl.a and b/3rdp/win64.release/libjxl/lib/libjxl.a differ
diff --git a/3rdp/win64.release/libjxl/lib/libjxl_threads.a b/3rdp/win64.release/libjxl/lib/libjxl_threads.a
index 7d6a7dc2c5c911397639437aad4d1d77b8411c37..c43be19821df2bc90a6b36fa9a8d9feecfb3d13a 100644
Binary files a/3rdp/win64.release/libjxl/lib/libjxl_threads.a and b/3rdp/win64.release/libjxl/lib/libjxl_threads.a differ
diff --git a/src/syncterm/GNUmakefile b/src/syncterm/GNUmakefile
index 9d9e3bfe2f78aef339debd58fa125a2b4e088ee5..6fcfdfd0c77f6047e194aeb587e3de7b8f8282c8 100644
--- a/src/syncterm/GNUmakefile
+++ b/src/syncterm/GNUmakefile
@@ -36,15 +36,18 @@ else
 endif
 
 ifdef win
- CFLAGS += -I${3RDP_ROOT}/win32.release/libjxl/include -DJXL_THREADS_STATIC_DEFINE -DJXL_STATIC_DEFINE
- LDFLAGS += -L${3RDP_ROOT}/${os}.release/libjxl/lib
- EXTRA_LIBS += -ljxl
- #EXTRA_LIBS += -ljxl_threads
- EXTRA_LIBS += -lbrotlidec
- EXTRA_LIBS += -lbrotlicommon
- EXTRA_LIBS += -lhwy
- CFLAGS += -DWITH_JPEG_XL -DWITH_STATIC_JXL
- OBJS += $(MTOBJODIR)$(DIRSEP)libjxl$(OFILE)
+ ifeq (${os}, "win32")
+  CFLAGS += -I${3RDP_ROOT}/win32.release/libjxl/include -DJXL_THREADS_STATIC_DEFINE -DJXL_STATIC_DEFINE
+  LDFLAGS += -L${3RDP_ROOT}/${os}.release/libjxl/lib -static-libstdc++ -static-libgcc
+  EXTRA_LIBS += -ljxl
+  EXTRA_LIBS += -ljxl_threads
+  EXTRA_LIBS += -lbrotlidec
+  EXTRA_LIBS += -lbrotlicommon
+  EXTRA_LIBS += -lhwy
+  CFLAGS += -DWITH_JPEG_XL -DWITH_STATIC_JXL
+  CFLAGS += -DWITH_JPEG_XL_THREADS
+  OBJS += $(MTOBJODIR)$(DIRSEP)libjxl$(OFILE)
+ endif
 else
  ifeq ($(shell pkg-config libjxl --exists && echo YES), YES)
   CFLAGS += $(shell pkg-config libjxl --cflags)
diff --git a/src/syncterm/libjxl.c b/src/syncterm/libjxl.c
index 91837e2e80f915275510e7e425ee8015fd995b58..718e69e63905d594d114e40716c91eedddace972 100644
--- a/src/syncterm/libjxl.c
+++ b/src/syncterm/libjxl.c
@@ -28,9 +28,9 @@ bool load_jxl_funcs(void)
 	Jxl.ResizableParallelRunnerDestroy = JxlResizableParallelRunnerDestroy;
 	Jxl.ResizableParallelRunnerSetThreads = JxlResizableParallelRunnerSetThreads;
 	Jxl.ResizableParallelRunnerSuggestThreads = JxlResizableParallelRunnerSuggestThreads;
-	Jxl.status = JXL_STATUS_NOTHREADS;
-#else
 	Jxl.status = JXL_STATUS_OK;
+#else
+	Jxl.status = JXL_STATUS_NOTHREADS;
 #endif
 
 	return true;
diff --git a/src/syncterm/term.c b/src/syncterm/term.c
index 1cfd5598e71a2944d3f71d9b9d81dc6990626913..e5a217dc57fffada0a0cbd96c95871c69ed5f1b4 100644
--- a/src/syncterm/term.c
+++ b/src/syncterm/term.c
@@ -3094,7 +3094,6 @@ read_jxl(const char *fn)
 	if (map == NULL)
 		return map;
 
-	// Decode
 	JxlDecoderStatus st;
 	JxlBasicInfo info;
 	size_t sz = 0;
@@ -3146,8 +3145,9 @@ read_jxl(const char *fn)
 				width = info.xsize;
 				height = info.ysize;
 #ifdef WITH_JPEG_XL_THREADS
-				if (Jxl.status == JXL_STATUS_OK)
+				if (Jxl.status == JXL_STATUS_OK && rpr) {
 					Jxl.ResizableParallelRunnerSetThreads(rpr, Jxl.ResizableParallelRunnerSuggestThreads(info.xsize, info.ysize));
+				}
 #endif
 				break;
 			case JXL_DEC_NEED_IMAGE_OUT_BUFFER:
@@ -3165,7 +3165,10 @@ read_jxl(const char *fn)
 					done = true;
 					break;
 				}
-				Jxl.DecoderSetImageOutBuffer(dec, &format, pbuf, sz);
+				if (Jxl.DecoderSetImageOutBuffer(dec, &format, pbuf, sz) != JXL_DEC_SUCCESS) {
+					done = true;
+					break;
+				}
 				break;
 			case JXL_DEC_FULL_IMAGE:
 				// Got a single frame... this is not necessarily the whole image though.