From e4dc2e04ca2e5fb1f0c58d3aa3b05e7d5b449532 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Fri, 8 Sep 2017 12:36:31 +0200 Subject: [PATCH] Remove unused and upstreamed patch This patch was initially used to fix a bunch of build failures with GCC 6. The first hunk was for i386 and x86_64, while the second was for ARM. See: https://bugzilla.redhat.com/show_bug.cgi?id=1307280 These have since been upstreamed. The first hunk was actually not correct because it broke 4-colour RAWs with VNG demosaic. So, it was eventually reverted in favour of a better patch. See: https://github.com/LibRaw/LibRaw/issues/56 The second hunk was upstreamed as commit f4c0b98581a64147 No need to do a build just for this. --- LibRaw.spec | 6 +-- dcraw_narrowing.patch | 92 ------------------------------------------- 2 files changed, 2 insertions(+), 96 deletions(-) delete mode 100644 dcraw_narrowing.patch diff --git a/LibRaw.spec b/LibRaw.spec index 3e5dd7f..bdc2f63 100644 --- a/LibRaw.spec +++ b/LibRaw.spec @@ -14,8 +14,7 @@ Source1: http://www.libraw.org/data/%{name}-demosaic-pack-GPL2-%{version}.tar.gz Source2: http://www.libraw.org/data/%{name}-demosaic-pack-GPL3-%{version}.tar.gz Patch0: LibRaw-0.6.0-pkgconfig.patch Patch1: LibRaw-0.17.1-CVE-2015-8366-8367.patch -#Patch2: dcraw_narrowing.patch -Patch3: radc_divbyzero.patch +Patch2: radc_divbyzero.patch Provides: bundled(dcraw) = 9.25 @@ -57,8 +56,7 @@ LibRaw sample programs %patch0 -p0 -b .pkgconfig %patch1 -p1 -b .CVE-2015-8366 -#patch2 -p0 -%patch3 -p1 -b .CVE-2017-13735 +%patch2 -p1 -b .CVE-2017-13735 %build %configure --enable-examples=yes --enable-jasper --enable-lcms \ diff --git a/dcraw_narrowing.patch b/dcraw_narrowing.patch deleted file mode 100644 index c2e2d08..0000000 --- a/dcraw_narrowing.patch +++ /dev/null @@ -1,92 +0,0 @@ ---- internal/dcraw_common.cpp -+++ internal/dcraw_common.cpp -@@ -4417,30 +4417,37 @@ void CLASS lin_interpolate() - */ - void CLASS vng_interpolate() - { -- static const signed char *cp, terms[] = { -- -2,-2,+0,-1,0,0x01, -2,-2,+0,+0,1,0x01, -2,-1,-1,+0,0,0x01, -- -2,-1,+0,-1,0,0x02, -2,-1,+0,+0,0,0x03, -2,-1,+0,+1,1,0x01, -- -2,+0,+0,-1,0,0x06, -2,+0,+0,+0,1,0x02, -2,+0,+0,+1,0,0x03, -- -2,+1,-1,+0,0,0x04, -2,+1,+0,-1,1,0x04, -2,+1,+0,+0,0,0x06, -- -2,+1,+0,+1,0,0x02, -2,+2,+0,+0,1,0x04, -2,+2,+0,+1,0,0x04, -- -1,-2,-1,+0,0,0x80, -1,-2,+0,-1,0,0x01, -1,-2,+1,-1,0,0x01, -- -1,-2,+1,+0,1,0x01, -1,-1,-1,+1,0,0x88, -1,-1,+1,-2,0,0x40, -- -1,-1,+1,-1,0,0x22, -1,-1,+1,+0,0,0x33, -1,-1,+1,+1,1,0x11, -- -1,+0,-1,+2,0,0x08, -1,+0,+0,-1,0,0x44, -1,+0,+0,+1,0,0x11, -- -1,+0,+1,-2,1,0x40, -1,+0,+1,-1,0,0x66, -1,+0,+1,+0,1,0x22, -- -1,+0,+1,+1,0,0x33, -1,+0,+1,+2,1,0x10, -1,+1,+1,-1,1,0x44, -- -1,+1,+1,+0,0,0x66, -1,+1,+1,+1,0,0x22, -1,+1,+1,+2,0,0x10, -- -1,+2,+0,+1,0,0x04, -1,+2,+1,+0,1,0x04, -1,+2,+1,+1,0,0x04, -- +0,-2,+0,+0,1,0x80, +0,-1,+0,+1,1,0x88, +0,-1,+1,-2,0,0x40, -- +0,-1,+1,+0,0,0x11, +0,-1,+2,-2,0,0x40, +0,-1,+2,-1,0,0x20, -- +0,-1,+2,+0,0,0x30, +0,-1,+2,+1,1,0x10, +0,+0,+0,+2,1,0x08, -- +0,+0,+2,-2,1,0x40, +0,+0,+2,-1,0,0x60, +0,+0,+2,+0,1,0x20, -- +0,+0,+2,+1,0,0x30, +0,+0,+2,+2,1,0x10, +0,+1,+1,+0,0,0x44, -- +0,+1,+1,+2,0,0x10, +0,+1,+2,-1,1,0x40, +0,+1,+2,+0,0,0x60, -- +0,+1,+2,+1,0,0x20, +0,+1,+2,+2,0,0x10, +1,-2,+1,+0,0,0x80, -- +1,-1,+1,+1,0,0x88, +1,+0,+1,+2,0,0x08, +1,+0,+2,-1,0,0x40, -- +1,+0,+2,+1,0,0x10 -- }, chood[] = { -1,-1, -1,0, -1,+1, 0,+1, +1,+1, +1,0, +1,-1, 0,-1 }; -+ struct interpolate_terms { -+ signed char y1, x1, y2, x2, weight; -+ unsigned char grads; -+ }; -+ static const interpolate_terms terms[] = { -+ {-2,-2,+0,-1,0,0x01}, {-2,-2,+0,+0,1,0x01}, {-2,-1,-1,+0,0,0x01}, -+ {-2,-1,+0,-1,0,0x02}, {-2,-1,+0,+0,0,0x03}, {-2,-1,+0,+1,1,0x01}, -+ {-2,+0,+0,-1,0,0x06}, {-2,+0,+0,+0,1,0x02}, {-2,+0,+0,+1,0,0x03}, -+ {-2,+1,-1,+0,0,0x04}, {-2,+1,+0,-1,1,0x04}, {-2,+1,+0,+0,0,0x06}, -+ {-2,+1,+0,+1,0,0x02}, {-2,+2,+0,+0,1,0x04}, {-2,+2,+0,+1,0,0x04}, -+ {-1,-2,-1,+0,0,0x80}, {-1,-2,+0,-1,0,0x01}, {-1,-2,+1,-1,0,0x01}, -+ {-1,-2,+1,+0,1,0x01}, {-1,-1,-1,+1,0,0x88}, {-1,-1,+1,-2,0,0x40}, -+ {-1,-1,+1,-1,0,0x22}, {-1,-1,+1,+0,0,0x33}, {-1,-1,+1,+1,1,0x11}, -+ {-1,+0,-1,+2,0,0x08}, {-1,+0,+0,-1,0,0x44}, {-1,+0,+0,+1,0,0x11}, -+ {-1,+0,+1,-2,1,0x40}, {-1,+0,+1,-1,0,0x66}, {-1,+0,+1,+0,1,0x22}, -+ {-1,+0,+1,+1,0,0x33}, {-1,+0,+1,+2,1,0x10}, {-1,+1,+1,-1,1,0x44}, -+ {-1,+1,+1,+0,0,0x66}, {-1,+1,+1,+1,0,0x22}, {-1,+1,+1,+2,0,0x10}, -+ {-1,+2,+0,+1,0,0x04}, {-1,+2,+1,+0,1,0x04}, {-1,+2,+1,+1,0,0x04}, -+ {+0,-2,+0,+0,1,0x80}, {+0,-1,+0,+1,1,0x88}, {+0,-1,+1,-2,0,0x40}, -+ {+0,-1,+1,+0,0,0x11}, {+0,-1,+2,-2,0,0x40}, {+0,-1,+2,-1,0,0x20}, -+ {+0,-1,+2,+0,0,0x30}, {+0,-1,+2,+1,1,0x10}, {+0,+0,+0,+2,1,0x08}, -+ {+0,+0,+2,-2,1,0x40}, {+0,+0,+2,-1,0,0x60}, {+0,+0,+2,+0,1,0x20}, -+ {+0,+0,+2,+1,0,0x30}, {+0,+0,+2,+2,1,0x10}, {+0,+1,+1,+0,0,0x44}, -+ {+0,+1,+1,+2,0,0x10}, {+0,+1,+2,-1,1,0x40}, {+0,+1,+2,+0,0,0x60}, -+ {+0,+1,+2,+1,0,0x20}, {+0,+1,+2,+2,0,0x10}, {+1,-2,+1,+0,0,0x80}, -+ {+1,-1,+1,+1,0,0x88}, {+1,+0,+1,+2,0,0x08}, {+1,+0,+2,-1,0,0x40}, -+ {+1,+0,+2,+1,0,0x10} -+ }; -+ const interpolate_terms *cpt; -+ signed char *cp; -+ signed char chood[] = { -1,-1, -1,0, -1,+1, 0,+1, +1,+1, +1,0, +1,-1, 0,-1 }; - ushort (*brow[5])[4], *pix; - int prow=8, pcol=2, *ip, *code[16][16], gval[8], gmin, gmax, sum[4]; - int row, col, x, y, x1, x2, y1, y2, t, weight, grads, color, diag; -@@ -4456,11 +4463,11 @@ void CLASS vng_interpolate() - for (row=0; row < prow; row++) /* Precalculate for VNG */ - for (col=0; col < pcol; col++) { - code[row][col] = ip; -- for (cp=terms, t=0; t < 64; t++) { -- y1 = *cp++; x1 = *cp++; -- y2 = *cp++; x2 = *cp++; -- weight = *cp++; -- grads = *cp++; -+ for (cpt=&terms[0], t=0; t < 64, cpt = &terms[t]; t++) { -+ y1 = cpt->y1; x1 = cpt->x1; -+ y2 = cpt->y2; x2 = cpt->x2; -+ weight = cpt->weight; -+ grads = cpt->grads; - color = fcol(row+y1,col+x1); - if (fcol(row+y2,col+x2) != color) continue; - diag = (fcol(row,col+1) == color && fcol(row+1,col) == color) ? 2:1; ---- internal/dcraw_common.cpp~ 2016-02-24 09:04:39.000000000 -0500 -+++ internal/dcraw_common.cpp 2016-02-24 09:06:31.152698597 -0500 -@@ -2469,7 +2469,7 @@ - - void CLASS kodak_radc_load_raw() - { -- static const char src[] = { -+ static const signed char src[] = { - 1,1, 2,3, 3,4, 4,2, 5,7, 6,5, 7,6, 7,8, - 1,0, 2,1, 3,3, 4,4, 5,2, 6,7, 7,6, 8,5, 8,8, - 2,1, 2,3, 3,0, 3,2, 3,4, 4,6, 5,5, 6,7, 6,8,