diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2016-07-31 22:51:02 +0200 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2016-07-31 22:51:02 +0200 |
commit | cba3797d92767648c2a35c431a38a5ec8300b923 (patch) | |
tree | d595dc67b255d5b498702547689d32c2a5ea2436 /app-text/poppler/files | |
parent | sys-apps/openrc: 0.21.3 version bump (diff) | |
download | gentoo-cba3797d92767648c2a35c431a38a5ec8300b923.tar.gz gentoo-cba3797d92767648c2a35c431a38a5ec8300b923.tar.bz2 gentoo-cba3797d92767648c2a35c431a38a5ec8300b923.zip |
app-text/poppler: Backport two crash fixes from upstream git
Package-Manager: portage-2.3.0
Diffstat (limited to 'app-text/poppler/files')
-rw-r--r-- | app-text/poppler/files/poppler-0.46.0-crashfix-1.patch | 36 | ||||
-rw-r--r-- | app-text/poppler/files/poppler-0.46.0-crashfix-2.patch | 41 |
2 files changed, 77 insertions, 0 deletions
diff --git a/app-text/poppler/files/poppler-0.46.0-crashfix-1.patch b/app-text/poppler/files/poppler-0.46.0-crashfix-1.patch new file mode 100644 index 000000000000..6d2352bd17f4 --- /dev/null +++ b/app-text/poppler/files/poppler-0.46.0-crashfix-1.patch @@ -0,0 +1,36 @@ +From 7d3aea760a14a73962e429059f73d97391660367 Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid <aacid@kde.org> +Date: Sat, 30 Jul 2016 17:32:59 +0200 +Subject: [PATCH 1/2] Fix abort on documents where the docinfo obj is not a + dict + +Bug #97134 +--- + poppler/PDFDoc.cc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/poppler/PDFDoc.cc b/poppler/PDFDoc.cc +index c91d6e4..a51d8b6 100644 +--- a/poppler/PDFDoc.cc ++++ b/poppler/PDFDoc.cc +@@ -14,7 +14,7 @@ + // under GPL version 2 or later + // + // Copyright (C) 2005, 2006, 2008 Brad Hards <bradh@frogmouth.net> +-// Copyright (C) 2005, 2007-2009, 2011-2015 Albert Astals Cid <aacid@kde.org> ++// Copyright (C) 2005, 2007-2009, 2011-2016 Albert Astals Cid <aacid@kde.org> + // Copyright (C) 2008 Julien Rebetez <julienr@svn.gnome.org> + // Copyright (C) 2008, 2010 Pino Toscano <pino@kde.org> + // Copyright (C) 2008, 2010, 2011 Carlos Garcia Campos <carlosgc@gnome.org> +@@ -646,7 +646,7 @@ void PDFDoc::setDocInfoStringEntry(const char *key, GooString *value) + GooString *PDFDoc::getDocInfoStringEntry(const char *key) { + Object infoObj; + getDocInfo(&infoObj); +- if (infoObj.isNull()) { ++ if (!infoObj.isDict()) { + return NULL; + } + +-- +2.9.1 + diff --git a/app-text/poppler/files/poppler-0.46.0-crashfix-2.patch b/app-text/poppler/files/poppler-0.46.0-crashfix-2.patch new file mode 100644 index 000000000000..3c2aa0af1730 --- /dev/null +++ b/app-text/poppler/files/poppler-0.46.0-crashfix-2.patch @@ -0,0 +1,41 @@ +From 3f5c84e17acfa71dfd44514384398f5a4c449630 Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid <aacid@kde.org> +Date: Sat, 30 Jul 2016 17:50:42 +0200 +Subject: [PATCH 2/2] Check for XRefEntry existing before using it + +Bug #97005 +--- + poppler/Hints.cc | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/poppler/Hints.cc b/poppler/Hints.cc +index bdd0d32..6c2fc25 100644 +--- a/poppler/Hints.cc ++++ b/poppler/Hints.cc +@@ -5,7 +5,7 @@ + // This file is licensed under the GPLv2 or later + // + // Copyright 2010, 2012 Hib Eris <hib@hiberis.nl> +-// Copyright 2010, 2011, 2013, 2014 Albert Astals Cid <aacid@kde.org> ++// Copyright 2010, 2011, 2013, 2014, 2016 Albert Astals Cid <aacid@kde.org> + // Copyright 2010, 2013 Pino Toscano <pino@kde.org> + // Copyright 2013 Adrian Johnson <ajohnson@redneon.com> + // Copyright 2014 Fabio D'Urso <fabiodurso@hotmail.it> +@@ -43,7 +43,13 @@ Hints::Hints(BaseStream *str, Linearization *linearization, XRef *xref, Security + pageObjectFirst); + pageObjectFirst = 0; + } +- pageOffsetFirst = xref->getEntry(pageObjectFirst)->offset; ++ XRefEntry *pageObjectFirstXRefEntry = xref->getEntry(pageObjectFirst); ++ if (!pageObjectFirstXRefEntry) { ++ error(errSyntaxWarning, -1, "No XRef entry for first page object"); ++ pageOffsetFirst = 0; ++ } else { ++ pageOffsetFirst = pageObjectFirstXRefEntry->offset; ++ } + + if (nPages >= INT_MAX / (int)sizeof(Guint)) { + error(errSyntaxWarning, -1, "Invalid number of pages ({0:d}) for hints table", nPages); +-- +2.9.1 + |