gnu: gd: Remove graft for 2.2.5.
* gnu/packages/gd.scm (gd): Update to 2.2.5. [source]: Remove obsolete patches. [replacement]: Remove field. (gd-2.2.5): Remove variable. * gnu/packages/patches/gd-fix-gd2-read-test.patch, gnu/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Remove patches. * gnu/packages/php.scm (php)[inputs]: Replace GD-2.2.5 with GD.
This commit is contained in:
parent
171bcdf7ba
commit
b093be236e
|
@ -638,10 +638,8 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/gcc-6-cross-environment-variables.patch \
|
%D%/packages/patches/gcc-6-cross-environment-variables.patch \
|
||||||
%D%/packages/patches/gcr-disable-failing-tests.patch \
|
%D%/packages/patches/gcr-disable-failing-tests.patch \
|
||||||
%D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \
|
%D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \
|
||||||
%D%/packages/patches/gd-fix-gd2-read-test.patch \
|
|
||||||
%D%/packages/patches/gd-fix-tests-on-i686.patch \
|
%D%/packages/patches/gd-fix-tests-on-i686.patch \
|
||||||
%D%/packages/patches/gd-freetype-test-failure.patch \
|
%D%/packages/patches/gd-freetype-test-failure.patch \
|
||||||
%D%/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch \
|
|
||||||
%D%/packages/patches/gegl-CVE-2012-4433.patch \
|
%D%/packages/patches/gegl-CVE-2012-4433.patch \
|
||||||
%D%/packages/patches/gemma-intel-compat.patch \
|
%D%/packages/patches/gemma-intel-compat.patch \
|
||||||
%D%/packages/patches/geoclue-config.patch \
|
%D%/packages/patches/geoclue-config.patch \
|
||||||
|
|
|
@ -38,11 +38,10 @@
|
||||||
(define-public gd
|
(define-public gd
|
||||||
(package
|
(package
|
||||||
(name "gd")
|
(name "gd")
|
||||||
(replacement gd-2.2.5)
|
|
||||||
;; Note: With libgd.org now pointing to github.com, genuine old
|
;; Note: With libgd.org now pointing to github.com, genuine old
|
||||||
;; tarballs are no longer available. Notably, versions 2.0.x are
|
;; tarballs are no longer available. Notably, versions 2.0.x are
|
||||||
;; missing.
|
;; missing.
|
||||||
(version "2.2.4")
|
(version "2.2.5")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -50,11 +49,9 @@
|
||||||
version "/libgd-" version ".tar.xz"))
|
version "/libgd-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1rp4v7n1dq38b92kl7gkvpvqqkw7nvdfnz6d5kip5klkxfki6zqk"))
|
"0lfy5f241sbv8s3splm2zqiaxv7lxrcshh875xryryk7yk5jqc4c"))
|
||||||
(patches (search-patches "gd-fix-gd2-read-test.patch"
|
(patches (search-patches "gd-fix-tests-on-i686.patch"
|
||||||
"gd-fix-tests-on-i686.patch"
|
"gd-freetype-test-failure.patch"))))
|
||||||
"gd-freetype-test-failure.patch"
|
|
||||||
"gd-php-73968-Fix-109-XBM-reading.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
;; As recommended by github.com/libgd/libgd/issues/278 to fix rounding
|
;; As recommended by github.com/libgd/libgd/issues/278 to fix rounding
|
||||||
|
@ -93,22 +90,6 @@ most common applications of GD involve website development.")
|
||||||
"See COPYING file in the distribution."))
|
"See COPYING file in the distribution."))
|
||||||
(properties '((cpe-name . "libgd")))))
|
(properties '((cpe-name . "libgd")))))
|
||||||
|
|
||||||
;; For CVE-2017-6362 and CVE-2017-7890.
|
|
||||||
(define-public gd-2.2.5
|
|
||||||
(package
|
|
||||||
(inherit gd)
|
|
||||||
(version "2.2.5")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append
|
|
||||||
"https://github.com/libgd/libgd/releases/download/gd-"
|
|
||||||
version "/libgd-" version ".tar.xz"))
|
|
||||||
(patches (search-patches "gd-fix-tests-on-i686.patch"
|
|
||||||
"gd-freetype-test-failure.patch"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0lfy5f241sbv8s3splm2zqiaxv7lxrcshh875xryryk7yk5jqc4c"))))))
|
|
||||||
|
|
||||||
(define-public perl-gd
|
(define-public perl-gd
|
||||||
(package
|
(package
|
||||||
(name "perl-gd")
|
(name "perl-gd")
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
Fix a 'maybe-uninitialized' warning (turned error)
|
|
||||||
which occurs on non-Intel platforms.
|
|
||||||
|
|
||||||
--- libgd-2.2.3/tests/gd2/gd2_read.c 2016-07-21 01:21:16.000000000 -0400
|
|
||||||
+++ libgd-2.2.3/tests/gd2/gd2_read.c 2016-07-29 15:52:03.806405312 -0400
|
|
||||||
@@ -5,7 +5,7 @@
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
|
||||||
- int error, i = 0;
|
|
||||||
+ int error = 0, i = 0;
|
|
||||||
gdImagePtr im, exp;
|
|
||||||
FILE *fp;
|
|
||||||
char *path[] = {
|
|
|
@ -1,121 +0,0 @@
|
||||||
This bug was first reported to php on https://bugs.php.net/bug.php?id=73968.
|
|
||||||
php then reported it to gd in https://github.com/libgd/libgd/issues/109.
|
|
||||||
|
|
||||||
Patch adapted from upstream source repository:
|
|
||||||
|
|
||||||
https://github.com/libgd/libgd/commit/082c5444838ea0d84f9fb6441aefdb44d78d9bba
|
|
||||||
|
|
||||||
Binary diffs have been removed from the patch because our patch
|
|
||||||
procedure doesn't support them.
|
|
||||||
|
|
||||||
From 082c5444838ea0d84f9fb6441aefdb44d78d9bba Mon Sep 17 00:00:00 2001
|
|
||||||
From: "Christoph M. Becker" <cmbecker69@gmx.de>
|
|
||||||
Date: Fri, 20 Jan 2017 22:48:20 +0100
|
|
||||||
Subject: [PATCH] Fix #109: XBM reading fails with printed error
|
|
||||||
|
|
||||||
When calculating the number of required bytes of an XBM image, we have
|
|
||||||
to take the line padding into account.
|
|
||||||
---
|
|
||||||
src/gd_xbm.c | 2 +-
|
|
||||||
tests/xbm/CMakeLists.txt | 1 +
|
|
||||||
tests/xbm/Makemodule.am | 5 ++++-
|
|
||||||
tests/xbm/github_bug_109.c | 35 +++++++++++++++++++++++++++++++++++
|
|
||||||
tests/xbm/github_bug_109.xbm | 5 +++++
|
|
||||||
5 files changed, 47 insertions(+), 2 deletions(-)
|
|
||||||
create mode 100644 tests/xbm/github_bug_109.c
|
|
||||||
create mode 100644 tests/xbm/github_bug_109.xbm
|
|
||||||
create mode 100644 tests/xbm/github_bug_109_exp.png
|
|
||||||
|
|
||||||
diff --git a/src/gd_xbm.c b/src/gd_xbm.c
|
|
||||||
index 5f09b56..c2ba2ad 100644
|
|
||||||
--- a/src/gd_xbm.c
|
|
||||||
+++ b/src/gd_xbm.c
|
|
||||||
@@ -108,7 +108,7 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromXbm(FILE * fd)
|
|
||||||
max_bit = 32768;
|
|
||||||
}
|
|
||||||
if (max_bit) {
|
|
||||||
- bytes = (width * height / 8) + 1;
|
|
||||||
+ bytes = (width + 7) / 8 * height;
|
|
||||||
if (!bytes) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
diff --git a/tests/xbm/CMakeLists.txt b/tests/xbm/CMakeLists.txt
|
|
||||||
index 183cf5e..08576e0 100644
|
|
||||||
--- a/tests/xbm/CMakeLists.txt
|
|
||||||
+++ b/tests/xbm/CMakeLists.txt
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
LIST(APPEND TESTS_FILES
|
|
||||||
+ github_bug_109
|
|
||||||
github_bug_170
|
|
||||||
)
|
|
||||||
|
|
||||||
diff --git a/tests/xbm/Makemodule.am b/tests/xbm/Makemodule.am
|
|
||||||
index ba1eabd..0f5beb6 100644
|
|
||||||
--- a/tests/xbm/Makemodule.am
|
|
||||||
+++ b/tests/xbm/Makemodule.am
|
|
||||||
@@ -1,5 +1,8 @@
|
|
||||||
libgd_test_programs += \
|
|
||||||
+ xbm/github_bug_109 \
|
|
||||||
xbm/github_bug_170
|
|
||||||
|
|
||||||
EXTRA_DIST += \
|
|
||||||
- xbm/CMakeLists.txt
|
|
||||||
+ xbm/CMakeLists.txt \
|
|
||||||
+ xbm/github_bug_109.xbm \
|
|
||||||
+ xbm/github_bug_109_exp.png
|
|
||||||
diff --git a/tests/xbm/github_bug_109.c b/tests/xbm/github_bug_109.c
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..1a020c6
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/tests/xbm/github_bug_109.c
|
|
||||||
@@ -0,0 +1,35 @@
|
|
||||||
+/**
|
|
||||||
+ * Test reading of XBM images with a width that is not a multiple of 8
|
|
||||||
+ *
|
|
||||||
+ * We're reading such an XBM image, and check that we got what we've expected,
|
|
||||||
+ * instead of an error message.
|
|
||||||
+ *
|
|
||||||
+ * See also <https://github.com/libgd/libgd/issues/109>.
|
|
||||||
+ */
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+#include "gd.h"
|
|
||||||
+#include "gdtest.h"
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+int main()
|
|
||||||
+{
|
|
||||||
+ gdImagePtr im;
|
|
||||||
+ FILE *fp;
|
|
||||||
+ char *path;
|
|
||||||
+
|
|
||||||
+ fp = gdTestFileOpen2("xbm", "github_bug_109.xbm");
|
|
||||||
+ im = gdImageCreateFromXbm(fp);
|
|
||||||
+ fclose(fp);
|
|
||||||
+ gdTestAssert(im != NULL);
|
|
||||||
+ gdTestAssert(gdImageGetTrueColorPixel(im, 0, 0) == 0);
|
|
||||||
+ gdTestAssert(gdImageGetTrueColorPixel(im, 0, 1) == 0xffffff);
|
|
||||||
+
|
|
||||||
+ path = gdTestFilePath2("xbm", "github_bug_109_exp.png");
|
|
||||||
+ gdAssertImageEqualsToFile(path, im);
|
|
||||||
+ gdFree(path);
|
|
||||||
+
|
|
||||||
+ gdImageDestroy(im);
|
|
||||||
+
|
|
||||||
+ return gdNumFailures();
|
|
||||||
+}
|
|
||||||
diff --git a/tests/xbm/github_bug_109.xbm b/tests/xbm/github_bug_109.xbm
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..f427d86
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/tests/xbm/github_bug_109.xbm
|
|
||||||
@@ -0,0 +1,5 @@
|
|
||||||
+#define test_width 10
|
|
||||||
+#define test_height 10
|
|
||||||
+static unsigned char test_bits[] = {
|
|
||||||
+ 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00,
|
|
||||||
+ 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00};
|
|
||||||
|
|
||||||
--
|
|
||||||
2.7.4
|
|
||||||
|
|
|
@ -282,7 +282,7 @@
|
||||||
("curl" ,curl)
|
("curl" ,curl)
|
||||||
("cyrus-sasl" ,cyrus-sasl)
|
("cyrus-sasl" ,cyrus-sasl)
|
||||||
("freetype" ,freetype)
|
("freetype" ,freetype)
|
||||||
("gd" ,gd-2.2.5)
|
("gd" ,gd)
|
||||||
("gdbm" ,gdbm)
|
("gdbm" ,gdbm)
|
||||||
("glibc" ,glibc)
|
("glibc" ,glibc)
|
||||||
("gmp" ,gmp)
|
("gmp" ,gmp)
|
||||||
|
|
Loading…
Reference in New Issue