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);