summaryrefslogtreecommitdiffstats
path: root/package/ghostscript/0004-Bug700317-Fix-logic-for-an-older-change.patch
diff options
context:
space:
mode:
authorBaruch Siach <baruch@tkos.co.il>2019-02-12 20:42:20 +0200
committerPeter Korsgaard <peter@korsgaard.com>2019-02-12 20:02:46 +0100
commit2e060d64e21a8f4dd8943acdbc3e1e563df13aba (patch)
treed4ae73dbc8a682b44da2caf775023a38403cb6bf /package/ghostscript/0004-Bug700317-Fix-logic-for-an-older-change.patch
parent0526c9f7819722b2deebf7a15821689ac4ead56a (diff)
downloadbuildroot-2e060d64e21a8f4dd8943acdbc3e1e563df13aba.tar.gz
buildroot-2e060d64e21a8f4dd8943acdbc3e1e563df13aba.zip
package/ghostscript: add upstream security fixes
CVE-2019-6116: Remote code execution. https://www.openwall.com/lists/oss-security/2019/01/23/5 Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'package/ghostscript/0004-Bug700317-Fix-logic-for-an-older-change.patch')
-rw-r--r--package/ghostscript/0004-Bug700317-Fix-logic-for-an-older-change.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/package/ghostscript/0004-Bug700317-Fix-logic-for-an-older-change.patch b/package/ghostscript/0004-Bug700317-Fix-logic-for-an-older-change.patch
new file mode 100644
index 0000000000..65ebd44df2
--- /dev/null
+++ b/package/ghostscript/0004-Bug700317-Fix-logic-for-an-older-change.patch
@@ -0,0 +1,31 @@
+From af9a9dceb7be7df743d55c4d078a1ae846b6f556 Mon Sep 17 00:00:00 2001
+From: Chris Liddell <chris.liddell@artifex.com>
+Date: Sat, 15 Dec 2018 09:08:32 +0000
+Subject: [PATCH] Bug700317: Fix logic for an older change
+
+Unlike almost every other function in gs, dict_find_string() returns 1 on
+success 0 or <0 on failure. The logic for this case was wrong.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Upstream status: commit 99f13091a3
+
+ psi/interp.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/psi/interp.c b/psi/interp.c
+index aa5779c51420..f6c45bbe24dc 100644
+--- a/psi/interp.c
++++ b/psi/interp.c
+@@ -703,7 +703,7 @@ again:
+ * i.e. it's an internal operator we have hidden
+ */
+ code = dict_find_string(systemdict, (const char *)bufptr, &tobj);
+- if (code < 0) {
++ if (code <= 0) {
+ buf[0] = buf[1] = buf[rlen + 2] = buf[rlen + 3] = '-';
+ rlen += 4;
+ bufptr = buf;
+--
+2.20.1
+
OpenPOWER on IntegriCloud