From 3f1ebf910e7a35b16db359182b535470541f2c96 Mon Sep 17 00:00:00 2001 From: Marek Kasik Date: Mon, 1 Apr 2019 12:53:31 +0200 Subject: [PATCH] Fix stack overflow on broken file Resolves: #1691725 --- poppler-0.73.0-stack-overflow.patch | 20 ++++++++++++++++++++ poppler.spec | 9 ++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 poppler-0.73.0-stack-overflow.patch diff --git a/poppler-0.73.0-stack-overflow.patch b/poppler-0.73.0-stack-overflow.patch new file mode 100644 index 0000000..1f6d53f --- /dev/null +++ b/poppler-0.73.0-stack-overflow.patch @@ -0,0 +1,20 @@ +From fada09a2ccc11a3a1d308e810f1336d8df6011fd Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid +Date: Mon, 18 Mar 2019 00:50:00 +0100 +Subject: pdfunite: Fix stack overflow on broken file + +Fixes issue #741 + +diff --git a/poppler/PDFDoc.cc b/poppler/PDFDoc.cc +index 26842f84..ab4abcad 100644 +--- a/poppler/PDFDoc.cc ++++ b/poppler/PDFDoc.cc +@@ -1703,7 +1703,7 @@ void PDFDoc::markObject (Object* obj, XRef *xRef, XRef *countRef, unsigned int n + array = obj->getArray(); + for (int i=0; igetLength(); i++) { + Object obj1 = array->getNF(i); +- markObject(&obj1, xRef, countRef, numOffset, oldRefNum, newRefNum); ++ markObject(&obj1, xRef, countRef, numOffset, oldRefNum, newRefNum, alreadyMarkedDicts); + } + break; + case objDict: diff --git a/poppler.spec b/poppler.spec index c9c0cad..22478b6 100644 --- a/poppler.spec +++ b/poppler.spec @@ -4,7 +4,7 @@ Summary: PDF rendering library Name: poppler Version: 0.73.0 -Release: 6%{?dist} +Release: 7%{?dist} License: (GPLv2 or GPLv3) and GPLv2+ and LGPLv2+ and MIT URL: http://poppler.freedesktop.org/ Source0: http://poppler.freedesktop.org/poppler-%{version}.tar.xz @@ -31,6 +31,9 @@ Patch9: poppler-0.73.0-check-catalog-is-dict.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1683632 Patch10: poppler-0.73.0-image-stream-getline.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1691724 +Patch11: poppler-0.73.0-stack-overflow.patch + BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: gettext-devel @@ -261,6 +264,10 @@ test "$(pkg-config --modversion poppler-splash)" = "%{version}" %{_mandir}/man1/* %changelog +* Mon Apr 1 2019 Marek Kasik - 0.73.0-7 +- Fix stack overflow on broken file +- Resolves: #1691725 + * Mon Mar 11 2019 Marek Kasik - 0.73.0-6 - Fix possible crash on broken files in ImageStream::getLine() - Resolves: #1683633