From d278d7ee5524bd91efef3d6ea27a41fe54edf986 Mon Sep 17 00:00:00 2001 From: Abdelrahman Date: Mon, 6 May 2024 00:37:23 +0100 Subject: [PATCH] Multiply RGB when reading image with unassociated alpha --- src/tiff/tiffread.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/tiff/tiffread.c b/src/tiff/tiffread.c index 7c16161..20ed256 100644 --- a/src/tiff/tiffread.c +++ b/src/tiff/tiffread.c @@ -606,6 +606,12 @@ internal void read_strips(TiffReader *reader) { p->a = 255; } else { fread_with_offset(reader->fp, &(p->a), 1, alpha_offset); + + if (alpha.type == ALPHA_TYPE_UNASSOCIATED) { + p->r *= p->a; + p->g *= p->a; + p->b *= p->a; + } } ++position;