From 6a8a53e7235a8621313b792b498ebb43452f9e38 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Sun, 24 Apr 2016 07:30:20 +0100 Subject: [PATCH] Explicitly set RGB colourspace in icon.pl's use of convert. This is that annoying feature of up-to-date 'convert' in which converting to or from a PNG file defaults to returning RGB values that have been 'helpfully' gamma-corrected (or some such) from the exact data stored in the source file to some nonsense you didn't want. Usually the worst this causes is slightly washed-out looking graphics, but in this case, since my entire aim was to squash the image into a specific set of exact RGB values so as to turn it into a paletted Windows icon file, it caused an actual build failure when the next loop in icon.pl couldn't find the gamma-corrected values in its expected palette map, and no wonder. --- icons/icon.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/icons/icon.pl b/icons/icon.pl index d0c5a8e..fcb1aa3 100755 --- a/icons/icon.pl +++ b/icons/icon.pl @@ -127,7 +127,7 @@ sub readicon { # point, to avoid having to do it ourselves (.BMP and hence # .ICO are bottom-up). my $data = []; - open IDATA, "convert -flip -depth 8 $filename rgba:- |"; + open IDATA, "convert -set colorspace sRGB -flip -depth 8 $filename rgba:- |"; push @$data, $rgb while (read IDATA,$rgb,4,0) == 4; close IDATA; # Check we have the right amount of data.