--- Begin Message ---
Package: xpdf
Version: 3.03-9
Severity: normal
Tags: patch
User: [email protected]
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 <[email protected]>
+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)
--- End Message ---