Date: Tuesday, February 1, 2022 @ 12:52:48 Author: eworm Revision: 435666
upgpkg: lcms2 2.13-2: fix for optimisation error on grayscale Added: lcms2/trunk/0001-fix-for-optimisation-error-on-grayscale.patch Modified: lcms2/trunk/PKGBUILD ----------------------------------------------------+ 0001-fix-for-optimisation-error-on-grayscale.patch | 41 +++++++++++++++++++ PKGBUILD | 14 +++++- 2 files changed, 52 insertions(+), 3 deletions(-) Added: 0001-fix-for-optimisation-error-on-grayscale.patch =================================================================== --- 0001-fix-for-optimisation-error-on-grayscale.patch (rev 0) +++ 0001-fix-for-optimisation-error-on-grayscale.patch 2022-02-01 12:52:48 UTC (rev 435666) @@ -0,0 +1,41 @@ +From fdbfb7694f9d7048d53674b79ddfc38068bfdaf7 Mon Sep 17 00:00:00 2001 +From: Marti Maria <[email protected]> +Date: Sun, 30 Jan 2022 16:56:48 +0100 +Subject: Fix for optimisation error on grayscale + +Thanks to Aaron Boxer for reporting this issue +--- + src/cmsintrp.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/cmsintrp.c b/src/cmsintrp.c +index 5cd6d16..5eb98e6 100644 +--- a/src/cmsintrp.c ++++ b/src/cmsintrp.c +@@ -278,10 +278,10 @@ void Eval1Input(CMSREGISTER const cmsUInt16Number Input[], + // if last value... + if (Input[0] == 0xffff || p16->Domain[0] == 0) { + +- cmsUInt16Number y0 = LutTable[p16->Domain[0]]; +- ++ cmsUInt32Number y0 = p16->Domain[0] * p16->opta[0]; ++ + for (OutChan = 0; OutChan < p16->nOutputs; OutChan++) { +- Output[OutChan] = y0; ++ Output[OutChan] = LutTable[y0 + OutChan]; + } + } + else +@@ -324,10 +324,10 @@ void Eval1InputFloat(const cmsFloat32Number Value[], + // if last value... + if (val2 == 1.0 || p->Domain[0] == 0) { + +- y0 = LutTable[p->Domain[0]]; ++ cmsUInt32Number start = p->Domain[0] * p->opta[0]; + + for (OutChan = 0; OutChan < p->nOutputs; OutChan++) { +- Output[OutChan] = y0; ++ Output[OutChan] = LutTable[start + OutChan]; + } + } + else Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-02-01 10:06:27 UTC (rev 435665) +++ PKGBUILD 2022-02-01 12:52:48 UTC (rev 435666) @@ -2,7 +2,7 @@ pkgname=lcms2 pkgver=2.13 -pkgrel=1 +pkgrel=2 pkgdesc='Small-footprint color management engine, version 2' arch=('x86_64') url='http://www.littlecms.com/' @@ -9,9 +9,17 @@ license=('MIT') depends=('libtiff') provides=('liblcms2.so') -source=("https://github.com/mm2/Little-CMS/releases/download/lcms${pkgver}/${pkgname}-${pkgver}.tar.gz") -sha256sums=('0c67a5cc144029cfa34647a52809ec399aae488db4258a6a66fba318474a070f') +source=("https://github.com/mm2/Little-CMS/releases/download/lcms${pkgver}/${pkgname}-${pkgver}.tar.gz" + '0001-fix-for-optimisation-error-on-grayscale.patch') +sha256sums=('0c67a5cc144029cfa34647a52809ec399aae488db4258a6a66fba318474a070f' + 'efb68be0ad7bec92fb60d477ec1ba143feeba198e6e78fa0fc52d44bb4c2f9b4') +prepare() { + cd "${pkgname}-${pkgver}" + + patch -Np1 < ../0001-fix-for-optimisation-error-on-grayscale.patch +} + build() { cd "${pkgname}-${pkgver}"
