From da8d300db7b9a4ab3f79271bc0a6a41176bd6d87 Mon Sep 17 00:00:00 2001 From: Jonathan Brown Date: Tue, 3 Jun 2025 15:28:04 +0100 Subject: [PATCH] Fix APP14 markers --- lib/jpegli/encode.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/jpegli/encode.cc b/lib/jpegli/encode.cc index ac4917d2..8f91716f 100644 --- a/lib/jpegli/encode.cc +++ b/lib/jpegli/encode.cc @@ -783,8 +783,11 @@ void jpegli_set_colorspace(j_compress_ptr cinfo, J_COLOR_SPACE colorspace) { default: JPEGLI_ERROR("Unsupported jpeg colorspace %d", colorspace); } - // Adobe marker is only needed to distinguish CMYK and YCCK JPEGs. - cinfo->write_Adobe_marker = TO_JXL_BOOL(cinfo->jpeg_color_space == JCS_YCCK); + // Adobe marker is needed to distinguish CMYK, YCCK and RGB(XYB) JPEGs. + cinfo->write_Adobe_marker = + TO_JXL_BOOL((cinfo->jpeg_color_space == JCS_CMYK || + cinfo->jpeg_color_space == JCS_YCCK || + cinfo->jpeg_color_space == JCS_RGB)); if (cinfo->comp_info == nullptr) { cinfo->comp_info = jpegli::Allocate(cinfo, MAX_COMPONENTS);