Date: Sun, 13 Sep 2015 20:27:08 +0000 (UTC) From: Antoine Brodin <antoine@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r396855 - in head/graphics/jpeg-turbo: . files Message-ID: <201509132027.t8DKR8KU049983@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: antoine Date: Sun Sep 13 20:27:07 2015 New Revision: 396855 URL: https://svnweb.freebsd.org/changeset/ports/396855 Log: Fix negative shift with IFAST FDCT and qual=100 This fixes regression tests with clang 3.7.0 PR: 202762 Obtained from: https://github.com/libjpeg-turbo/libjpeg-turbo/commit/4cfa3f4c39c2e46eca3a65c67411d15e08a3fc70 Approved by: maintainer timeout (15 days) Added: head/graphics/jpeg-turbo/files/patch-jcdctmgr.c (contents, props changed) Modified: head/graphics/jpeg-turbo/Makefile Modified: head/graphics/jpeg-turbo/Makefile ============================================================================== --- head/graphics/jpeg-turbo/Makefile Sun Sep 13 19:41:01 2015 (r396854) +++ head/graphics/jpeg-turbo/Makefile Sun Sep 13 20:27:07 2015 (r396855) @@ -3,7 +3,7 @@ PORTNAME= jpeg-turbo PORTVERSION= 1.4.0 -PORTREVISION?= 0 +PORTREVISION?= 1 CATEGORIES= graphics MASTER_SITES= SF/lib${PORTNAME}/${PORTVERSION} DISTNAME= lib${PORTNAME}-${PORTVERSION} Added: head/graphics/jpeg-turbo/files/patch-jcdctmgr.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/graphics/jpeg-turbo/files/patch-jcdctmgr.c Sun Sep 13 20:27:07 2015 (r396855) @@ -0,0 +1,41 @@ +--- jcdctmgr.c.orig 2014-11-06 09:32:38 UTC ++++ jcdctmgr.c +@@ -6,7 +6,7 @@ + * libjpeg-turbo Modifications: + * Copyright (C) 1999-2006, MIYASAKA Masaru. + * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB +- * Copyright (C) 2011, 2014 D. R. Commander ++ * Copyright (C) 2011, 2014-2015 D. R. Commander + * For conditions of distribution and use, see the accompanying README file. + * + * This file contains the forward-DCT management logic. +@@ -175,6 +175,19 @@ compute_reciprocal (UINT16 divisor, DCTE + UDCTELEM c; + int b, r; + ++ if (divisor == 1) { ++ /* divisor == 1 means unquantized, so these reciprocal/correction/shift ++ * values will cause the C quantization algorithm to act like the ++ * identity function. Since only the C quantization algorithm is used in ++ * these cases, the scale value is irrelevant. ++ */ ++ dtbl[DCTSIZE2 * 0] = (DCTELEM) 1; /* reciprocal */ ++ dtbl[DCTSIZE2 * 1] = (DCTELEM) 0; /* correction */ ++ dtbl[DCTSIZE2 * 2] = (DCTELEM) 1; /* scale */ ++ dtbl[DCTSIZE2 * 3] = (DCTELEM) (-sizeof(DCTELEM) * 8); /* shift */ ++ return 0; ++ } ++ + b = flss(divisor) - 1; + r = sizeof(DCTELEM) * 8 + b; + +@@ -395,7 +408,8 @@ quantize (JCOEFPTR coef_block, DCTELEM * + + #if BITS_IN_JSAMPLE == 8 + +- UDCTELEM recip, corr, shift; ++ UDCTELEM recip, corr; ++ int shift; + UDCTELEM2 product; + + for (i = 0; i < DCTSIZE2; i++) {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201509132027.t8DKR8KU049983>