Package: xpdf Version: 3.03-9 Severity: normal Tags: patch User: ubuntu-de...@lists.ubuntu.com Usertags: origin-ubuntu quantal ubuntu-patch
Dear Maintainer, We are using this patch in Ubuntu to handle the changes in libpoppler's API version 19 to version 25/26. Please consider for Debian. * Follow changes to libpoppler25 ABI. Thanks for considering the patch. -apw -- System Information: Debian Release: wheezy/sid APT prefers precise-updates APT policy: (500, 'precise-updates'), (500, 'precise-security'), (500, 'precise-proposed'), (500, 'precise'), (100, 'precise-backports') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-26-generic (SMP w/2 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
diff -Nru xpdf-3.03/debian/changelog xpdf-3.03/debian/changelog diff -Nru xpdf-3.03/debian/patches/check-system-calls.patch xpdf-3.03/debian/patches/check-system-calls.patch --- xpdf-3.03/debian/patches/check-system-calls.patch 2012-02-25 01:22:51.000000000 +0000 +++ xpdf-3.03/debian/patches/check-system-calls.patch 2012-06-12 18:54:08.000000000 +0100 @@ -19,7 +19,7 @@ - system(fileName->getCString()); + errcode = system(fileName->getCString()); + if (errcode != 0) { -+ error( -1 , "non-zero error code returned by system call"); ++ error(errInternal, -1 , "non-zero error code returned by system call"); + } } else { msg = new GString("About to execute the command:\n"); @@ -28,7 +28,7 @@ - system(fileName->getCString()); + errcode = system(fileName->getCString()); + if (errcode != 0) { -+ error( -1 , "non-zero error code returned by system call"); ++ error(errInternal, -1 , "non-zero error code returned by system call"); + } } delete msg; @@ -48,7 +48,7 @@ - system(cmd->getCString()); + errcode = system(cmd->getCString()); + if (errcode != 0) { -+ error( -1 , "non-zero error code returned by system call"); ++ error(errInternal, -1 , "non-zero error code returned by system call"); + } delete cmd; } @@ -72,7 +72,7 @@ - system(cmd->getCString()); + errcode = system(cmd->getCString()); + if (errcode != 0) { -+ error( -1, "non-zero error code return by system call"); ++ error(errInternal, -1, "non-zero error code return by system call"); + } delete cmd; } diff -Nru xpdf-3.03/debian/patches/series xpdf-3.03/debian/patches/series --- xpdf-3.03/debian/patches/series 2012-02-25 01:35:11.000000000 +0000 +++ xpdf-3.03/debian/patches/series 2012-06-12 18:54:08.000000000 +0100 @@ -23,3 +23,4 @@ fix-invalid-conversions.patch check-system-calls.patch fix-pointer-casting.patch +track_libpopper25_api_changes.patch diff -Nru xpdf-3.03/debian/patches/track_libpopper25_api_changes.patch xpdf-3.03/debian/patches/track_libpopper25_api_changes.patch --- xpdf-3.03/debian/patches/track_libpopper25_api_changes.patch 1970-01-01 01:00:00.000000000 +0100 +++ xpdf-3.03/debian/patches/track_libpopper25_api_changes.patch 2012-06-12 18:54:08.000000000 +0100 @@ -0,0 +1,121 @@ +Description: track changes to libpoppler25 API + Track changes to the libpoppler25 ABI + . + startDoc now takes a PDFDoc rather than and XRef + TextOutputDev::TextOutputDev has an additional fixedPitch parameter, 0 + triggering previous behaviour. + TextOutputDev::findText has an additions wholeWord parameter + PSOutputDev::PSOutputDev no longer takes Xref or Catalog parameters +Author: Andy Whitcroft <a...@ubuntu.com> +Last-Updated: 2012-06-12 +Index: xpdf-3.03/xpdf/PDFCore.cc +=================================================================== +--- xpdf-3.03.orig/xpdf/PDFCore.cc 2012-06-11 19:46:42.000000000 +0100 ++++ xpdf-3.03/xpdf/PDFCore.cc 2012-06-12 09:26:58.919206959 +0100 +@@ -196,7 +196,7 @@ + } + doc = newDoc; + if (out) { +- out->startDoc(doc->getXRef()); ++ out->startDoc(newDoc); + } + + // nothing displayed yet +@@ -901,7 +901,7 @@ + page->links = doc->getLinks(page->page); + } + if (!page->text) { +- if ((textOut = new TextOutputDev(NULL, gTrue, gFalse, gFalse))) { ++ if ((textOut = new TextOutputDev(NULL, gTrue, 0, gFalse, gFalse))) { + doc->displayPage(textOut, page->page, dpi, dpi, rotate, + gFalse, gTrue, gFalse); + page->text = textOut->takeText(); +@@ -1661,7 +1661,7 @@ + } + s = page->text->getText(x0, y0, x1, y1); + } else { +- textOut = new TextOutputDev(NULL, gTrue, gFalse, gFalse); ++ textOut = new TextOutputDev(NULL, gTrue, 0, gFalse, gFalse); + if (textOut->isOk()) { + doc->displayPage(textOut, pg, dpi, dpi, rotate, gFalse, gTrue, gFalse); + textOut->cvtUserToDev(xMin, yMin, &x0, &y0); +@@ -1741,7 +1741,7 @@ + page = findPage(pg); + } + if (page->text->findText(u, len, startAtTop, gTrue, startAtLast, gFalse, +- caseSensitive, backward, ++ caseSensitive, backward, gFalse, + &xMin, &yMin, &xMax, &yMax)) { + goto found; + } +@@ -1749,7 +1749,7 @@ + if (!onePageOnly) { + + // search following/previous pages +- textOut = new TextOutputDev(NULL, gTrue, gFalse, gFalse); ++ textOut = new TextOutputDev(NULL, gTrue, 0, gFalse, gFalse); + if (!textOut->isOk()) { + delete textOut; + goto notFound; +@@ -1759,7 +1759,7 @@ + pg += backward ? -1 : 1) { + doc->displayPage(textOut, pg, 72, 72, 0, gFalse, gTrue, gFalse); + if (textOut->findText(u, len, gTrue, gTrue, gFalse, gFalse, +- caseSensitive, backward, ++ caseSensitive, backward, gFalse, + &xMin, &yMin, &xMax, &yMax)) { + delete textOut; + goto foundPage; +@@ -1772,7 +1772,7 @@ + pg += backward ? -1 : 1) { + doc->displayPage(textOut, pg, 72, 72, 0, gFalse, gTrue, gFalse); + if (textOut->findText(u, len, gTrue, gTrue, gFalse, gFalse, +- caseSensitive, backward, ++ caseSensitive, backward, gFalse, + &xMin, &yMin, &xMax, &yMax)) { + delete textOut; + goto foundPage; +@@ -1794,7 +1794,7 @@ + yMax = selectLRY; + } + if (page->text->findText(u, len, gTrue, gFalse, gFalse, stopAtLast, +- caseSensitive, backward, ++ caseSensitive, backward, gFalse, + &xMin, &yMin, &xMax, &yMax)) { + goto found; + } +@@ -1811,7 +1811,7 @@ + gTrue); + page = findPage(pg); + if (!page->text->findText(u, len, gTrue, gTrue, gFalse, gFalse, +- caseSensitive, backward, ++ caseSensitive, backward, gFalse, + &xMin, &yMin, &xMax, &yMax)) { + // this can happen if coalescing is bad + goto notFound; +Index: xpdf-3.03/xpdf/XPDFViewer.cc +=================================================================== +--- xpdf-3.03.orig/xpdf/XPDFViewer.cc 2012-06-11 20:06:31.579178695 +0100 ++++ xpdf-3.03/xpdf/XPDFViewer.cc 2012-06-12 09:49:04.405779684 +0100 +@@ -3711,8 +3711,8 @@ + // Normal print mode + if (printAll && !printBack) + { +- psOut = new PSOutputDev(psFileName->getCString(), doc, doc->getXRef(), +- doc->getCatalog(), NULL, firstPage, lastPage, ++ psOut = new PSOutputDev(psFileName->getCString(), doc, ++ NULL, firstPage, lastPage, + psModePS); + if (psOut->isOk()) { + doc->displayPages(psOut, firstPage, lastPage, 72, 72, +@@ -3757,8 +3757,8 @@ + { + for (i=beginPage;; i+=step) + { +- psOut = new PSOutputDev(psFileName->getCString(), doc, doc->getXRef(), +- doc->getCatalog(), NULL, i, i, psModePS); ++ psOut = new PSOutputDev(psFileName->getCString(), doc, ++ NULL, i, i, psModePS); + if (psOut->isOk()) { + doc->displayPages(psOut, i, i, 72, 72, + 0, gTrue, globalParams->getPSCrop(), gFalse); diff -Nru xpdf-3.03/debian/rules xpdf-3.03/debian/rules --- xpdf-3.03/debian/rules 2012-05-06 18:55:56.000000000 +0100 +++ xpdf-3.03/debian/rules 2012-06-12 18:54:08.000000000 +0100 @@ -24,7 +24,7 @@ cp $(sources) $(headers) build sed -e s/GString/GooString/g -e s/GMutex/GooMutex/g -e s/GHash/GooHash/g \ -e s/GList/GooList/g -e s/\<aconf\.h\>/\<poppler-config\.h\>/g \ - -e s/errConfig,//g -e s/errSyntaxError,//g -e s/errIO,//g -i build/* + -i build/* mv build/parseargs.c build/parseargs.cc override_dh_auto_build: $(objects)