NMU of xpdf
Hi,
I've prepared an NMU for xpdf adding some old small patches from BTS,
closing important bugs and segfaults.
Dear release team: Could that get an freeze exception (it could go via
unstable) or would it need any changes?
Dear xpdf maintainer: If I get no objections from the release time,
I plan to upload this next weekend, unless I get an NACK from you
till then. I'd appreciate an earlier ACK.
diff -u xpdf-3.02/debian/changelog xpdf-3.02/debian/changelog
--- xpdf-3.02/debian/changelog
+++ xpdf-3.02/debian/changelog
@@ -1,3 +1,16 @@
+xpdf (3.02-1.4) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * apply patch from Jiri Palecek
+ against a segfault in image handling (Closes: 462544)
+ * apply patch from Arno Renevier against a segfault when pressing Ctrl-W
+ in full-screen mode (Closes: 437725)
+ * apply patch from Stefan Beyer against a segfault when pressing 'g'
+ in full-screen mode (Closes: 479467)
+ * fix ps encoding error on 64-bit architectures (Closes: 444648, 482029)
+
+ -- Bernhard R. Link <brlink@debian.org> Sun, 07 Sep 2008 14:56:17 +0200
+
xpdf (3.02-1.3) unstable; urgency=high
* Non-maintainer upload by testing security team.
diff -u xpdf-3.02/debian/patches/00list xpdf-3.02/debian/patches/00list
--- xpdf-3.02/debian/patches/00list
+++ xpdf-3.02/debian/patches/00list
@@ -24,0 +25,16 @@
+
+# Fix http://bugs.debian.org/462544:
+# segmentation fault in image handling by off-by-one error
+fix-462544.dpatch
+
+# Fix http://bugs.debian.org/437725:
+# segmentation fault when pressing Ctrl-W in full screen mode
+fix-437725.dpatch
+
+# Fix http://bugs.debian.org/479467;
+# segmentation fault when pressing g in full screen mode
+fix-479467.dpatch
+
+# Fix http://bugs.debian.org/444648:
+# Do proper PS stream encoding on 64 bit architectures (#444648)
+fix-444648.dpatch
only in patch2:
unchanged:
--- xpdf-3.02.orig/debian/patches/fix-462544.dpatch
+++ xpdf-3.02/debian/patches/fix-462544.dpatch
@@ -0,0 +1,28 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## fix-462544.dpatch from Jiri Palecek <jpalecek@web.de>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix segmentation fault in image handling
+
+@DPATCH@
+--- xpdf-3.02/xpdf/SplashOutputDev.cc 2007-02-27 23:05:52.000000000 +0100
++++ xpdf-3.02.new/xpdf/SplashOutputDev.cc 2008-02-17 17:28:46.000000000 +0100
+@@ -2475,14 +2461,14 @@
+ tx = (int)floor(xMin);
+ if (tx < 0) {
+ tx = 0;
+- } else if (tx > bitmap->getWidth()) {
+- tx = bitmap->getWidth();
++ } else if (tx >= bitmap->getWidth()) {
++ tx = bitmap->getWidth()-1;
+ }
+ ty = (int)floor(yMin);
+ if (ty < 0) {
+ ty = 0;
+- } else if (ty > bitmap->getHeight()) {
+- ty = bitmap->getHeight();
++ } else if (ty >= bitmap->getHeight()) {
++ ty = bitmap->getHeight()-1;
+ }
+ w = (int)ceil(xMax) - tx + 1;
+ if (tx + w > bitmap->getWidth()) {
only in patch2:
unchanged:
--- xpdf-3.02.orig/debian/patches/fix-437725.dpatch
+++ xpdf-3.02/debian/patches/fix-437725.dpatch
@@ -0,0 +1,42 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## fix-437725.dpatch from Arno Renevier <arenevier@fdn.fr>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix segmentation fault when pressing Ctrl-W in full screen mode
+
+@DPATCH@
+--- a/xpdf/XPDFViewer.cc 2007-08-13 22:41:36.000000000 +0200
++++ b/xpdf/XPDFViewer.cc 2007-08-13 23:01:07.000000000 +0200
+@@ -400,18 +400,21 @@ void XPDFViewer::clear() {
+ title = app->getTitle() ? app->getTitle()->getCString()
+ : (char *)xpdfAppName;
+ XtVaSetValues(win, XmNtitle, title, XmNiconName, title, NULL);
+- s = XmStringCreateLocalized("");
+- XtVaSetValues(pageNumText, XmNlabelString, s, NULL);
+- XmStringFree(s);
+- s = XmStringCreateLocalized(" of 0");
+- XtVaSetValues(pageCountLabel, XmNlabelString, s, NULL);
+- XmStringFree(s);
+
+- // disable buttons
+- XtVaSetValues(prevTenPageBtn, XmNsensitive, False, NULL);
+- XtVaSetValues(prevPageBtn, XmNsensitive, False, NULL);
+- XtVaSetValues(nextTenPageBtn, XmNsensitive, False, NULL);
+- XtVaSetValues(nextPageBtn, XmNsensitive, False, NULL);
++ if (toolBar != None) {
++ s = XmStringCreateLocalized("");
++ XtVaSetValues(pageNumText, XmNlabelString, s, NULL);
++ XmStringFree(s);
++ s = XmStringCreateLocalized(" of 0");
++ XtVaSetValues(pageCountLabel, XmNlabelString, s, NULL);
++ XmStringFree(s);
++
++ // disable buttons
++ XtVaSetValues(prevTenPageBtn, XmNsensitive, False, NULL);
++ XtVaSetValues(prevPageBtn, XmNsensitive, False, NULL);
++ XtVaSetValues(nextTenPageBtn, XmNsensitive, False, NULL);
++ XtVaSetValues(nextPageBtn, XmNsensitive, False, NULL);
++ }
+
+ // remove the old outline
+ #ifndef DISABLE_OUTLINE
only in patch2:
unchanged:
--- xpdf-3.02.orig/debian/patches/fix-479467.dpatch
+++ xpdf-3.02/debian/patches/fix-479467.dpatch
@@ -0,0 +1,20 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## fix-479467.dpatch from Stephan Beyer <s-beyer@gmx.net>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix segmentation fault when pressing g in full screen mode
+
+@DPATCH@
+diff -ruN xpdf-3.02.old/xpdf/XPDFViewer.cc xpdf-3.02.fix/xpdf/XPDFViewer.cc
+--- xpdf-3.02.old/xpdf/XPDFViewer.cc 2007-02-27 23:05:52.000000000 +0100
++++ xpdf-3.02.fix/xpdf/XPDFViewer.cc 2008-05-04 21:29:34.000000000 +0200
+@@ -834,6 +834,9 @@
+
+ void XPDFViewer::cmdFocusToPageNum(GString *args[], int nArgs,
+ XEvent *event) {
++ if (core->getFullScreen()) {
++ return;
++ }
+ XmTextFieldSetSelection(pageNumText, 0,
+ strlen(XmTextFieldGetString(pageNumText)),
+ XtLastTimestampProcessed(display));
only in patch2:
unchanged:
--- xpdf-3.02.orig/debian/patches/fix-444648.dpatch
+++ xpdf-3.02/debian/patches/fix-444648.dpatch
@@ -0,0 +1,18 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## fix-444648.dpatch by Bernhard R. Link <brlink@debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Do proper PS stream encoding on 64 bit architectures
+
+@DPATCH@
+--- a/xpdf/Stream.cc 2008-09-04 11:57:18.000000000 +0000
++++ b/xpdf/Stream.cc 2008-09-04 12:33:13.000000000 +0000
+@@ -4514,7 +4514,7 @@
+ GBool ASCII85Encoder::fillBuf() {
+ Gulong t;
+ char buf1[5];
+- int c0, c1, c2, c3;
++ unsigned int c0, c1, c2, c3;
+ int n, i;
+
+ if (eof) {
Hochachtungsvoll,
Bernhard R. Link
Reply to: