summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordrochner <drochner>2011-01-31 17:44:30 +0000
committerdrochner <drochner>2011-01-31 17:44:30 +0000
commit656cd865bdbc8fe45c8b4d22d22445780e306f63 (patch)
treeb18e9fc49a799b3051eb88a023a7dccf84136e88
parentd54f20ac2db15e32351d58792314e05aa11fcddb (diff)
downloadpkgsrc-656cd865bdbc8fe45c8b4d22d22445780e306f63.tar.gz
add patch from upstream to fix possible memory corruption due to
malformed JPEG images (SA43020)
-rw-r--r--print/mupdf/Makefile3
-rw-r--r--print/mupdf/distinfo3
-rw-r--r--print/mupdf/patches/patch-ad25
3 files changed, 29 insertions, 2 deletions
diff --git a/print/mupdf/Makefile b/print/mupdf/Makefile
index 9f2b81e87a7..bd2fa3c89a7 100644
--- a/print/mupdf/Makefile
+++ b/print/mupdf/Makefile
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.6 2010/12/23 11:44:55 dsainty Exp $
+# $NetBSD: Makefile,v 1.7 2011/01/31 17:44:30 drochner Exp $
#
DISTNAME= mupdf-0.7
+PKGREVISION= 1
CATEGORIES= print
MASTER_SITES= http://ccxvii.net/mupdf/download/ \
http://ccxvii.net/mupdf/download/archive/
diff --git a/print/mupdf/distinfo b/print/mupdf/distinfo
index 135d5e90666..80273616291 100644
--- a/print/mupdf/distinfo
+++ b/print/mupdf/distinfo
@@ -1,7 +1,8 @@
-$NetBSD: distinfo,v 1.3 2010/09/15 13:15:29 joerg Exp $
+$NetBSD: distinfo,v 1.4 2011/01/31 17:44:30 drochner Exp $
SHA1 (mupdf-0.7.tar.gz) = 3e97cefa9a65b770cc1be7584d6a5da9dc064d84
RMD160 (mupdf-0.7.tar.gz) = 82723652fb967be7665cfc55f4b2bb7c3ff55b69
Size (mupdf-0.7.tar.gz) = 3557621 bytes
SHA1 (patch-ab) = ab4f0f5518dcc8e76ef2578f8c539b94e95d4f0a
SHA1 (patch-ac) = 2c2b4a64b486e0b628e1a097c71f8e011daf85f5
+SHA1 (patch-ad) = 58aa0c2006e1222c4575a33ee276995cf02e6c5b
diff --git a/print/mupdf/patches/patch-ad b/print/mupdf/patches/patch-ad
new file mode 100644
index 00000000000..3efb4c59d3a
--- /dev/null
+++ b/print/mupdf/patches/patch-ad
@@ -0,0 +1,25 @@
+$NetBSD: patch-ad,v 1.1 2011/01/31 17:44:31 drochner Exp $
+
+http://secunia.com/advisories/43020/
+
+--- fitz/filt_dctd.c.orig 2010-08-25 14:12:11.000000000 +0000
++++ fitz/filt_dctd.c
+@@ -182,8 +182,18 @@ static void
+ closedctd(fz_stream *stm)
+ {
+ fz_dctd *state = stm->state;
++
++ if (setjmp(state->jb))
++ {
++ state->chain->rp = state->chain->wp - state->cinfo.src->bytes_in_buffer;
++ fz_warn("jpeg error: %s", state->msg);
++ goto skip;
++ }
++
+ if (state->init)
+ jpeg_finish_decompress(&state->cinfo);
++
++skip:
+ state->chain->rp = state->chain->wp - state->cinfo.src->bytes_in_buffer;
+ jpeg_destroy_decompress(&state->cinfo);
+ fz_free(state->scanline);