Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-text/poppler/, app-text/poppler/files/
Date: Sat, 07 Apr 2018 15:36:18
Message-Id: 1523115336.c9526cde161497cd43721f89c6d8aa23328be8e4.asturm@gentoo
1 commit: c9526cde161497cd43721f89c6d8aa23328be8e4
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Sun Mar 18 14:06:40 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Sat Apr 7 15:35:36 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9526cde
7
8 app-text/poppler: Cleanup vulnerable
9
10 Bug: https://bugs.gentoo.org/644388
11 Package-Manager: Portage-2.3.24, Repoman-2.3.6
12
13 app-text/poppler/Manifest | 2 -
14 .../files/poppler-0.26.0-qt5-dependencies.patch | 31 ---
15 .../poppler/files/poppler-0.33.0-openjpeg2.patch | 15 --
16 app-text/poppler/files/poppler-0.40-FindQt4.patch | 31 ---
17 .../files/poppler-0.53.0-respect-cflags.patch | 52 -----
18 .../files/poppler-0.57.0-CVE-2017-14517.patch | 27 ---
19 .../files/poppler-0.57.0-CVE-2017-14518.patch | 27 ---
20 .../files/poppler-0.57.0-CVE-2017-14519.patch | 100 --------
21 .../files/poppler-0.57.0-CVE-2017-14520.patch | 24 --
22 .../files/poppler-0.57.0-CVE-2017-14617.patch | 31 ---
23 .../files/poppler-0.57.0-CVE-2017-14926.patch | 36 ---
24 .../files/poppler-0.57.0-CVE-2017-14927.patch | 32 ---
25 .../files/poppler-0.57.0-CVE-2017-14928.patch | 69 ------
26 .../files/poppler-0.57.0-CVE-2017-14929.patch | 252 ---------------------
27 .../files/poppler-0.57.0-CVE-2017-15565.patch | 28 ---
28 app-text/poppler/poppler-0.57.0-r1.ebuild | 158 -------------
29 app-text/poppler/poppler-0.61.1.ebuild | 145 ------------
30 17 files changed, 1060 deletions(-)
31
32 diff --git a/app-text/poppler/Manifest b/app-text/poppler/Manifest
33 index b0c5d45b7c7..2a44f3b9a7f 100644
34 --- a/app-text/poppler/Manifest
35 +++ b/app-text/poppler/Manifest
36 @@ -1,4 +1,2 @@
37 -DIST poppler-0.57.0.tar.xz 1703300 BLAKE2B e4126dff2e0ee140fa4c5c30d5a57da5aff38d4c1f566e4ace22d3fe625949db3a662a8513881702cd5c5c302845998dd462048b5158abaf1d119650c997c84c SHA512 197a0bf51e7fd607db83144d771904e48f266ab9e1252c688f9e7700a5bdd239670cf0363e9d77137bafa9c08fb6ddb9d066cc78a74dac7dfd717662b25cac5f
38 -DIST poppler-0.61.1.tar.xz 1433696 BLAKE2B 6749466223d3bb0e891c6b26c7f1faa5c774dd47ac94c22474efe4a52af228aeb2abbb8ab268667acaa83fb41293246266124a111740df764eeedbe229fa70aa SHA512 780ebf07ad757635f3f71c7b1f61ad0849526f99f0dc514c3290c4e8db7000a68dfe50c17253d4c086aec5c5390055102478eba96699088179822f3be5ce278d
39 DIST poppler-0.62.0.tar.xz 1423372 BLAKE2B 01c8745d0c1fa5b412ec92295a8784f5c1deff8b9fa709d09a3236d630f78fecc6af23fe3302964478d6356562712726db422ef51fe59a8b42e13e08370a77ac SHA512 91f7eae7b05965ae97a34e658bed2a676be8a6e4d34f82148ece6eb58932632dcf9a34d50c66412f93f560ce575abf5c608ed6b1e5184604b96024801886c706
40 DIST poppler-0.63.0.tar.xz 1439552 BLAKE2B 9bf5cff7f5fec93ec7d49d1745aadb2b03a68d38216003e4bff54a5d264c9dda10265da79a755af1f31b582602d034cfefb16b807185d674a2cfe0d20e5de277 SHA512 a151d08480e9940a02191355ef5e7499d6494cff05f22f49de2bb8223512f5e5c9bb9b33651943ded30b4cd7096a2423fb7a01fa62228fbcd1d3a221b885cfe9
41
42 diff --git a/app-text/poppler/files/poppler-0.26.0-qt5-dependencies.patch b/app-text/poppler/files/poppler-0.26.0-qt5-dependencies.patch
43 deleted file mode 100644
44 index bf1effd4377..00000000000
45 --- a/app-text/poppler/files/poppler-0.26.0-qt5-dependencies.patch
46 +++ /dev/null
47 @@ -1,31 +0,0 @@
48 -From 95f6a96e390830233d953f8afa37817499912b35 Mon Sep 17 00:00:00 2001
49 -From: Johannes Huber <johu@g.o>
50 -Date: Sat, 10 May 2014 15:00:48 +0200
51 -Subject: [PATCH] [Qt5] Drop unused dependencies
52 -
53 ----
54 - CMakeLists.txt | 6 ++----
55 - 1 file changed, 2 insertions(+), 4 deletions(-)
56 -
57 -diff --git a/CMakeLists.txt b/CMakeLists.txt
58 -index fbafc4e..073f39b 100644
59 ---- a/CMakeLists.txt
60 -+++ b/CMakeLists.txt
61 -@@ -106,12 +106,10 @@ if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_
62 - find_package(Qt5Core)
63 - find_package(Qt5Gui)
64 - find_package(Qt5Xml)
65 -- find_package(Qt5Widgets)
66 -- find_package(Qt5Test)
67 -- if (Qt5Core_FOUND AND Qt5Gui_FOUND AND Qt5Xml_FOUND AND Qt5Widgets_FOUND AND Qt5Test_FOUND)
68 -+ if (Qt5Core_FOUND AND Qt5Gui_FOUND AND Qt5Xml_FOUND)
69 - set(QT5_FOUND true)
70 - else ()
71 -- message("-- Package Qt5Core or Qt5Gui or Qt5Xml or Qt5Widgets or Qt5Test not found")
72 -+ message("-- Package Qt5Core or Qt5Gui or Qt5Xml not found")
73 - set(QT5_FOUND false)
74 - endif()
75 - else(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.8.7)
76 ---
77 -1.9.2
78 -
79
80 diff --git a/app-text/poppler/files/poppler-0.33.0-openjpeg2.patch b/app-text/poppler/files/poppler-0.33.0-openjpeg2.patch
81 deleted file mode 100644
82 index af1a72fe9aa..00000000000
83 --- a/app-text/poppler/files/poppler-0.33.0-openjpeg2.patch
84 +++ /dev/null
85 @@ -1,15 +0,0 @@
86 -Sadly the CMake side of openjpeg slotting in Gentoo is broken.
87 -To reliably find openjpeg:2 we need to use pkg-config.
88 -
89 -diff -ruN poppler-0.33.0.orig/CMakeLists.txt poppler-0.33.0/CMakeLists.txt
90 ---- poppler-0.33.0.orig/CMakeLists.txt 2015-05-14 20:22:31.000000000 +0200
91 -+++ poppler-0.33.0/CMakeLists.txt 2015-05-24 20:39:30.163709257 +0200
92 -@@ -172,7 +172,7 @@
93 - set(USE_OPENJPEG1 ${LIBOPENJPEG_FOUND})
94 - set(WITH_OPENJPEG ${LIBOPENJPEG_FOUND})
95 - elseif(ENABLE_LIBOPENJPEG STREQUAL "openjpeg2")
96 -- find_package(LIBOPENJPEG2)
97 -+ pkg_check_modules(LIBOPENJPEG2 libopenjp2)
98 - set(USE_OPENJPEG2 ${LIBOPENJPEG2_FOUND})
99 - set(WITH_OPENJPEG ${LIBOPENJPEG2_FOUND})
100 - endif()
101
102 diff --git a/app-text/poppler/files/poppler-0.40-FindQt4.patch b/app-text/poppler/files/poppler-0.40-FindQt4.patch
103 deleted file mode 100644
104 index 84c58d5f7c7..00000000000
105 --- a/app-text/poppler/files/poppler-0.40-FindQt4.patch
106 +++ /dev/null
107 @@ -1,31 +0,0 @@
108 -
109 -Ensure that the correct version of Qt is always used.
110 -
111 -With the introduction qt-4.8.6, Qt binaries were moved from /usr/bin to
112 -/usr/$(get_libdir)/qt4/bin, leaving behind in their place symlinks to qtchooser.
113 -
114 -There is no guarantee to which version of Qt these symlinks might point, so it
115 -is necessary to find the correct version explicitly.
116 -
117 -Once qmake is found, it is queried for the correct location of all other items.
118 -
119 -Gentoo-bug: 572382
120 -
121 ---- a/cmake/modules/FindQt4.cmake
122 -+++ b/cmake/modules/FindQt4.cmake
123 -@@ -313,11 +313,10 @@
124 -
125 - GET_FILENAME_COMPONENT(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME)
126 - # check for qmake
127 --FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS
128 -- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
129 -- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
130 -- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin"
131 -- $ENV{QTDIR}/bin
132 -+FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS
133 -+ /usr/${CMAKE_INSTALL_LIBDIR}/qt4/bin
134 -+ /usr/bin
135 -+ NO_DEFAULT_PATH
136 - )
137 -
138 - IF (QT_QMAKE_EXECUTABLE)
139
140 diff --git a/app-text/poppler/files/poppler-0.53.0-respect-cflags.patch b/app-text/poppler/files/poppler-0.53.0-respect-cflags.patch
141 deleted file mode 100644
142 index 3fdd9c20382..00000000000
143 --- a/app-text/poppler/files/poppler-0.53.0-respect-cflags.patch
144 +++ /dev/null
145 @@ -1,52 +0,0 @@
146 -diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake
147 -index 8e3ef399..5c20bf63 100644
148 ---- a/cmake/modules/PopplerMacros.cmake
149 -+++ b/cmake/modules/PopplerMacros.cmake
150 -@@ -98,45 +98,14 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
151 - set(CMAKE_BUILD_TYPE RelWithDebInfo)
152 - endif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
153 -
154 --if(CMAKE_COMPILER_IS_GNUCXX)
155 - if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0.0")
156 - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wsuggest-override" )
157 - endif()
158 -
159 -- # set the default compile warnings
160 - set(DEFAULT_COMPILE_WARNINGS_NO)
161 - set(DEFAULT_COMPILE_WARNINGS_YES "-Wall -Wcast-align -fno-exceptions -fno-check-new -fno-common")
162 - set(DEFAULT_COMPILE_WARNINGS_KDE "-Wno-long-long -Wundef -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -Wcast-align -Wconversion -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common")
163 -
164 -- set(CMAKE_CXX_FLAGS "-Wnon-virtual-dtor -Woverloaded-virtual ${CMAKE_CXX_FLAGS}")
165 -- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
166 -- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
167 -- set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
168 -- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline")
169 -- set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs")
170 -- set(CMAKE_C_FLAGS "-std=c99")
171 -- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g")
172 -- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
173 -- set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
174 -- set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline")
175 -- set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs")
176 --
177 -- poppler_check_link_flag("-Wl,--as-needed" GCC_HAS_AS_NEEDED)
178 -- if(GCC_HAS_AS_NEEDED)
179 -- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--as-needed")
180 -- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--as-needed")
181 -- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed")
182 -- endif(GCC_HAS_AS_NEEDED)
183 --endif (CMAKE_COMPILER_IS_GNUCXX)
184 --
185 --if(CMAKE_C_COMPILER MATCHES "icc")
186 -- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
187 -- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
188 -- set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign")
189 -- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign")
190 -- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g")
191 -- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
192 -- set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign")
193 -- set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign")
194 --endif(CMAKE_C_COMPILER MATCHES "icc")
195 -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Woverloaded-virtual")
196 -
197 -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")
198
199 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14517.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14517.patch
200 deleted file mode 100644
201 index 6a0812cdbe8..00000000000
202 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14517.patch
203 +++ /dev/null
204 @@ -1,27 +0,0 @@
205 -From b524efeffa8d192c2597f4612ca961adc30286f6 Mon Sep 17 00:00:00 2001
206 -From: Albert Astals Cid <aacid@×××.org>
207 -Date: Wed, 13 Sep 2017 22:58:14 +0200
208 -Subject: [PATCH 1/4] XRef::parseEntry: Fix crash in broken file
209 -
210 -Bug #102687
211 ----
212 - poppler/XRef.cc | 3 +++
213 - 1 file changed, 3 insertions(+)
214 -
215 -diff --git a/poppler/XRef.cc b/poppler/XRef.cc
216 -index 6ea0fbb6..c74f2f60 100644
217 ---- a/poppler/XRef.cc
218 -+++ b/poppler/XRef.cc
219 -@@ -1603,6 +1603,9 @@ GBool XRef::parseEntry(Goffset offset, XRefEntry *entry)
220 - {
221 - GBool r;
222 -
223 -+ if (unlikely(entry == nullptr))
224 -+ return gFalse;
225 -+
226 - Object obj;
227 - obj.initNull();
228 - Parser parser = Parser(NULL, new Lexer(NULL,
229 ---
230 -2.14.1
231 -
232
233 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14518.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14518.patch
234 deleted file mode 100644
235 index 9e8f4bfe624..00000000000
236 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14518.patch
237 +++ /dev/null
238 @@ -1,27 +0,0 @@
239 -From 6ba3bba6447897260bf4117e191e09d89d91ff62 Mon Sep 17 00:00:00 2001
240 -From: Albert Astals Cid <aacid@×××.org>
241 -Date: Wed, 13 Sep 2017 23:09:45 +0200
242 -Subject: [PATCH 2/4] isImageInterpolationRequired: Fix divide by 0 on broken
243 - documents
244 -
245 -Bug #102688
246 ----
247 - splash/Splash.cc | 2 +-
248 - 1 file changed, 1 insertion(+), 1 deletion(-)
249 -
250 -diff --git a/splash/Splash.cc b/splash/Splash.cc
251 -index 46b8ce29..39fc7d64 100644
252 ---- a/splash/Splash.cc
253 -+++ b/splash/Splash.cc
254 -@@ -4134,7 +4134,7 @@ SplashError Splash::arbitraryTransformImage(SplashImageSource src, SplashICCTran
255 - static GBool isImageInterpolationRequired(int srcWidth, int srcHeight,
256 - int scaledWidth, int scaledHeight,
257 - GBool interpolate) {
258 -- if (interpolate)
259 -+ if (interpolate || srcWidth == 0 || srcHeight == 0)
260 - return gTrue;
261 -
262 - /* When scale factor is >= 400% we don't interpolate. See bugs #25268, #9860 */
263 ---
264 -2.14.1
265 -
266
267 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14519.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14519.patch
268 deleted file mode 100644
269 index bd84e96fba3..00000000000
270 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14519.patch
271 +++ /dev/null
272 @@ -1,100 +0,0 @@
273 -From 778180c0c09002f6adfc272eba6b0d0e4401c4cc Mon Sep 17 00:00:00 2001
274 -From: Albert Astals Cid <aacid@×××.org>
275 -Date: Wed, 13 Sep 2017 23:01:03 +0200
276 -Subject: [PATCH 3/4] Gfx::doShowText: Fix infinite recursion on broken files
277 -
278 -Bug #102701
279 ----
280 - poppler/Gfx.cc | 25 +++++++++++++++++++++++--
281 - poppler/Gfx.h | 1 +
282 - poppler/GfxFont.cc | 9 +++++++++
283 - poppler/GfxFont.h | 1 +
284 - 4 files changed, 34 insertions(+), 2 deletions(-)
285 -
286 -diff --git a/poppler/Gfx.cc b/poppler/Gfx.cc
287 -index 37220280..9feac54c 100644
288 ---- a/poppler/Gfx.cc
289 -+++ b/poppler/Gfx.cc
290 -@@ -4031,12 +4031,33 @@ void Gfx::doShowText(GooString *s) {
291 - state->transformDelta(dx, dy, &ddx, &ddy);
292 - if (!out->beginType3Char(state, curX + riseX, curY + riseY, ddx, ddy,
293 - code, u, uLen)) {
294 -- ((Gfx8BitFont *)font)->getCharProc(code, &charProc);
295 -+ ((Gfx8BitFont *)font)->getCharProcNF(code, &charProc);
296 -+ int refNum = -1;
297 -+ if (charProc.isRef()) {
298 -+ refNum = charProc.getRef().num;
299 -+ charProc.fetch(((Gfx8BitFont *)font)->getCharProcs()->getXRef(), &charProc);
300 -+ }
301 - if ((resDict = ((Gfx8BitFont *)font)->getResources())) {
302 - pushResources(resDict);
303 - }
304 - if (charProc.isStream()) {
305 -- display(&charProc, gFalse);
306 -+ std::set<int>::iterator charProcDrawingIt;
307 -+ bool displayCharProc = true;
308 -+ if (refNum != -1) {
309 -+ if (charProcDrawing.find(refNum) == charProcDrawing.end()) {
310 -+ charProcDrawingIt = charProcDrawing.insert(refNum).first;
311 -+ } else {
312 -+ displayCharProc = false;
313 -+ error(errSyntaxError, -1, "CharProc wants to draw a CharProc that is already beign drawn");
314 -+ }
315 -+ }
316 -+ if (displayCharProc) {
317 -+ display(&charProc, gFalse);
318 -+
319 -+ if (refNum != -1) {
320 -+ charProcDrawing.erase(charProcDrawingIt);
321 -+ }
322 -+ }
323 - } else {
324 - error(errSyntaxError, getPos(), "Missing or bad Type3 CharProc entry");
325 - }
326 -diff --git a/poppler/Gfx.h b/poppler/Gfx.h
327 -index a82f9f4a..44adaed5 100644
328 ---- a/poppler/Gfx.h
329 -+++ b/poppler/Gfx.h
330 -@@ -228,6 +228,7 @@ private:
331 - Parser *parser; // parser for page content stream(s)
332 -
333 - std::set<int> formsDrawing; // the forms that are being drawn
334 -+ std::set<int> charProcDrawing; // the charProc that are being drawn
335 -
336 - GBool // callback to check for an abort
337 - (*abortCheckCbk)(void *data);
338 -diff --git a/poppler/GfxFont.cc b/poppler/GfxFont.cc
339 -index b59ec06c..bb87c5a0 100644
340 ---- a/poppler/GfxFont.cc
341 -+++ b/poppler/GfxFont.cc
342 -@@ -1818,6 +1818,15 @@ Object *Gfx8BitFont::getCharProc(int code, Object *proc) {
343 - return proc;
344 - }
345 -
346 -+Object *Gfx8BitFont::getCharProcNF(int code, Object *proc) {
347 -+ if (enc[code] && charProcs.isDict()) {
348 -+ charProcs.dictLookupNF(enc[code], proc);
349 -+ } else {
350 -+ proc->initNull();
351 -+ }
352 -+ return proc;
353 -+}
354 -+
355 - Dict *Gfx8BitFont::getResources() {
356 - return resources.isDict() ? resources.getDict() : (Dict *)NULL;
357 - }
358 -diff --git a/poppler/GfxFont.h b/poppler/GfxFont.h
359 -index de7a7464..89a0ca0d 100644
360 ---- a/poppler/GfxFont.h
361 -+++ b/poppler/GfxFont.h
362 -@@ -353,6 +353,7 @@ public:
363 -
364 - // Return the Type 3 CharProc for the character associated with <code>.
365 - Object *getCharProc(int code, Object *proc);
366 -+ Object *getCharProcNF(int code, Object *proc);
367 -
368 - // Return the Type 3 Resources dictionary, or NULL if none.
369 - Dict *getResources();
370 ---
371 -2.14.1
372 -
373
374 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14520.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14520.patch
375 deleted file mode 100644
376 index f71ff53f61a..00000000000
377 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14520.patch
378 +++ /dev/null
379 @@ -1,24 +0,0 @@
380 -From 504b3590182175390f474657a372e78fb1508262 Mon Sep 17 00:00:00 2001
381 -From: Albert Astals Cid <aacid@×××.org>
382 -Date: Thu, 14 Sep 2017 19:14:23 +0200
383 -Subject: Splash::scaleImage: Do not try to scale if srcHeight or srcWidth are
384 - < 1
385 -
386 -Bug #102719
387 -
388 -diff --git a/splash/Splash.cc b/splash/Splash.cc
389 -index 39fc7d6..aba7814 100644
390 ---- a/splash/Splash.cc
391 -+++ b/splash/Splash.cc
392 -@@ -4152,7 +4152,7 @@ SplashBitmap *Splash::scaleImage(SplashImageSource src, void *srcData,
393 - SplashBitmap *dest;
394 -
395 - dest = new SplashBitmap(scaledWidth, scaledHeight, 1, srcMode, srcAlpha, gTrue, bitmap->getSeparationList());
396 -- if (dest->getDataPtr() != NULL) {
397 -+ if (dest->getDataPtr() != NULL && srcHeight > 0 && srcWidth > 0) {
398 - if (scaledHeight < srcHeight) {
399 - if (scaledWidth < srcWidth) {
400 - scaleImageYdXd(src, srcData, srcMode, nComps, srcAlpha,
401 ---
402 -cgit v0.10.2
403 -
404
405 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14617.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14617.patch
406 deleted file mode 100644
407 index 27947953612..00000000000
408 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14617.patch
409 +++ /dev/null
410 @@ -1,31 +0,0 @@
411 -From 939465c40902d72e0c05d4f3a27ee67e4a007ed7 Mon Sep 17 00:00:00 2001
412 -From: Albert Astals Cid <aacid@×××.org>
413 -Date: Tue, 19 Sep 2017 21:19:03 +0200
414 -Subject: [PATCH] Fix crash in broken files
415 -
416 -Bug #102854
417 ----
418 - poppler/Stream.cc | 5 ++---
419 - 1 file changed, 2 insertions(+), 3 deletions(-)
420 -
421 -diff --git a/poppler/Stream.cc b/poppler/Stream.cc
422 -index f4eda85b..0ad602c7 100644
423 ---- a/poppler/Stream.cc
424 -+++ b/poppler/Stream.cc
425 -@@ -454,11 +454,10 @@ ImageStream::ImageStream(Stream *strA, int widthA, int nCompsA, int nBitsA) {
426 - } else {
427 - imgLineSize = nVals;
428 - }
429 -- if (width > INT_MAX / nComps) {
430 -- // force a call to gmallocn(-1,...), which will throw an exception
431 -+ if (nComps <= 0 || width > INT_MAX / nComps) {
432 - imgLineSize = -1;
433 - }
434 -- imgLine = (Guchar *)gmallocn(imgLineSize, sizeof(Guchar));
435 -+ imgLine = (Guchar *)gmallocn_checkoverflow(imgLineSize, sizeof(Guchar));
436 - }
437 - imgIdx = nVals;
438 - }
439 ---
440 -2.14.1
441 -
442
443 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14926.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14926.patch
444 deleted file mode 100644
445 index 882cf0e2b8b..00000000000
446 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14926.patch
447 +++ /dev/null
448 @@ -1,36 +0,0 @@
449 -From 170fe21144d469d3f865eda6e298df440b784499 Mon Sep 17 00:00:00 2001
450 -From: Albert Astals Cid <aacid@×××.org>
451 -Date: Fri, 8 Sep 2017 18:28:15 +0200
452 -Subject: [PATCH 2/3] Annot: Fix crash on broken files
453 -
454 -Bug #102601
455 -
456 -(cherry picked from commit 2532df6060092e9fab7f041ae9598aff9cdd94bb)
457 ----
458 - poppler/Annot.cc | 6 +++---
459 - 1 file changed, 3 insertions(+), 3 deletions(-)
460 -
461 -diff --git a/poppler/Annot.cc b/poppler/Annot.cc
462 -index 27b698db..643ff12c 100644
463 ---- a/poppler/Annot.cc
464 -+++ b/poppler/Annot.cc
465 -@@ -6865,13 +6865,13 @@ AnnotRichMedia::Content::Content(Dict *dict) {
466 - assets = (Asset **)gmallocn(nAssets, sizeof(Asset *));
467 -
468 - int counter = 0;
469 -- for (int i = 0; i < obj2.arrayGetLength(); i += 2) {
470 -+ for (int i = 0; i < nAssets; ++i) {
471 - Object objKey;
472 -
473 - assets[counter] = new AnnotRichMedia::Asset;
474 -
475 -- obj2.arrayGet(i, &objKey);
476 -- obj2.arrayGet(i + 1, &assets[counter]->fileSpec);
477 -+ obj2.arrayGet(i * 2, &objKey);
478 -+ obj2.arrayGet(i * 2 + 1, &assets[counter]->fileSpec);
479 -
480 - assets[counter]->name = new GooString( objKey.getString() );
481 - ++counter;
482 ---
483 -2.14.1
484 -
485
486 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14927.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14927.patch
487 deleted file mode 100644
488 index 3595345800f..00000000000
489 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14927.patch
490 +++ /dev/null
491 @@ -1,32 +0,0 @@
492 -From 876e7f76159e2b12ee7d2d396f327dd2cc90bcb0 Mon Sep 17 00:00:00 2001
493 -From: Albert Astals Cid <aacid@×××.org>
494 -Date: Fri, 8 Sep 2017 18:26:05 +0200
495 -Subject: [PATCH 3/3] SplashOutputDev: Fix crash on broken files
496 -
497 -Bug #102604
498 -
499 -(cherry picked from commit 6472d8493f7e82cc78b41da20a2bf19fcb4e0a7d)
500 ----
501 - poppler/SplashOutputDev.cc | 6 +++++-
502 - 1 file changed, 5 insertions(+), 1 deletion(-)
503 -
504 -diff --git a/poppler/SplashOutputDev.cc b/poppler/SplashOutputDev.cc
505 -index 5502be64..46b55a42 100644
506 ---- a/poppler/SplashOutputDev.cc
507 -+++ b/poppler/SplashOutputDev.cc
508 -@@ -2714,7 +2714,11 @@ void SplashOutputDev::endType3Char(GfxState *state) {
509 - }
510 -
511 - void SplashOutputDev::type3D0(GfxState *state, double wx, double wy) {
512 -- t3GlyphStack->haveDx = gTrue;
513 -+ if (likely(t3GlyphStack != nullptr)) {
514 -+ t3GlyphStack->haveDx = gTrue;
515 -+ } else {
516 -+ error(errSyntaxWarning, -1, "t3GlyphStack was null in SplashOutputDev::type3D0");
517 -+ }
518 - }
519 -
520 - void SplashOutputDev::type3D1(GfxState *state, double wx, double wy,
521 ---
522 -2.14.1
523 -
524
525 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch
526 deleted file mode 100644
527 index bd2af863423..00000000000
528 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch
529 +++ /dev/null
530 @@ -1,69 +0,0 @@
531 -From 6bf7212c44d0131c8f8227a4a4dadc52a3afebd9 Mon Sep 17 00:00:00 2001
532 -From: Albert Astals Cid <aacid@×××.org>
533 -Date: Fri, 8 Sep 2017 18:29:42 +0200
534 -Subject: [PATCH 1/3] Annot: Fix crash on broken files
535 -
536 -Bug #102607
537 -
538 -(cherry picked from commit 1316c7a41f4dd7276f404f775ebb5fef2d24ab1c)
539 ----
540 - poppler/Annot.cc | 42 +++++++++++++++++++++++-------------------
541 - 1 file changed, 23 insertions(+), 19 deletions(-)
542 -
543 -diff --git a/poppler/Annot.cc b/poppler/Annot.cc
544 -index 974b098b..27b698db 100644
545 ---- a/poppler/Annot.cc
546 -+++ b/poppler/Annot.cc
547 -@@ -6982,26 +6982,30 @@ AnnotRichMedia::Configuration::Configuration(Dict *dict)
548 - } else if (!strcmp(name, "Video")) {
549 - type = typeVideo;
550 - } else {
551 -- // determine from first instance
552 -+ // determine from first non null instance
553 -+ type = typeFlash; // default in case all instances are null
554 - if (instances && nInstances > 0) {
555 -- AnnotRichMedia::Instance *instance = instances[0];
556 -- switch (instance->getType()) {
557 -- case AnnotRichMedia::Instance::type3D:
558 -- type = type3D;
559 -- break;
560 -- case AnnotRichMedia::Instance::typeFlash:
561 -- type = typeFlash;
562 -- break;
563 -- case AnnotRichMedia::Instance::typeSound:
564 -- type = typeSound;
565 -- break;
566 -- case AnnotRichMedia::Instance::typeVideo:
567 -- type = typeVideo;
568 -- break;
569 -- default:
570 -- type = typeFlash;
571 -- break;
572 -- }
573 -+ for (int i = 0; i < nInstances; ++i) {
574 -+ AnnotRichMedia::Instance *instance = instances[i];
575 -+ if (instance) {
576 -+ switch (instance->getType()) {
577 -+ case AnnotRichMedia::Instance::type3D:
578 -+ type = type3D;
579 -+ break;
580 -+ case AnnotRichMedia::Instance::typeFlash:
581 -+ type = typeFlash;
582 -+ break;
583 -+ case AnnotRichMedia::Instance::typeSound:
584 -+ type = typeSound;
585 -+ break;
586 -+ case AnnotRichMedia::Instance::typeVideo:
587 -+ type = typeVideo;
588 -+ break;
589 -+ }
590 -+ // break the loop since we found the first non null instance
591 -+ break;
592 -+ }
593 -+ }
594 - }
595 - }
596 - }
597 ---
598 -2.14.1
599 -
600
601 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14929.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14929.patch
602 deleted file mode 100644
603 index 11745ca5436..00000000000
604 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14929.patch
605 +++ /dev/null
606 @@ -1,252 +0,0 @@
607 -From accdc5be215c7ee3223e3ad21dee7708d910ef23 Mon Sep 17 00:00:00 2001
608 -From: Albert Astals Cid <aacid@×××.org>
609 -Date: Mon, 25 Sep 2017 19:33:44 +0200
610 -Subject: [PATCH 4/4] Fix infinite recursion on broken files
611 -
612 -Bug #102969
613 ----
614 - poppler/Gfx.cc | 46 ++++++++++++++++++++++++++++++++++------------
615 - poppler/GfxState.cc | 33 ++++++++++++++++++---------------
616 - poppler/GfxState.h | 15 +++++++++------
617 - 3 files changed, 61 insertions(+), 33 deletions(-)
618 -
619 -diff --git a/poppler/Gfx.cc b/poppler/Gfx.cc
620 -index 9feac54c..66d0a24c 100644
621 ---- a/poppler/Gfx.cc
622 -+++ b/poppler/Gfx.cc
623 -@@ -468,8 +468,14 @@ GfxPattern *GfxResources::lookupPattern(char *name, OutputDev *out, GfxState *st
624 -
625 - for (resPtr = this; resPtr; resPtr = resPtr->next) {
626 - if (resPtr->patternDict.isDict()) {
627 -- if (!resPtr->patternDict.dictLookup(name, &obj)->isNull()) {
628 -- pattern = GfxPattern::parse(resPtr, &obj, out, state);
629 -+ if (!resPtr->patternDict.dictLookupNF(name, &obj)->isNull()) {
630 -+ Ref patternRef = { -1, -1 };
631 -+ if (obj.isRef()) {
632 -+ patternRef = obj.getRef();
633 -+ obj.fetch(resPtr->patternDict.getDict()->getXRef(), &obj);
634 -+ }
635 -+
636 -+ pattern = GfxPattern::parse(resPtr, &obj, out, state, patternRef.num);
637 - obj.free();
638 - return pattern;
639 - }
640 -@@ -2298,18 +2304,34 @@ void Gfx::doTilingPatternFill(GfxTilingPattern *tPat,
641 - xi0, yi0, xi1, yi1, xstep, ystep)) {
642 - goto restore;
643 - } else {
644 -- out->updatePatternOpacity(state);
645 -- for (yi = yi0; yi < yi1; ++yi) {
646 -- for (xi = xi0; xi < xi1; ++xi) {
647 -- x = xi * xstep;
648 -- y = yi * ystep;
649 -- m1[4] = x * m[0] + y * m[2] + m[4];
650 -- m1[5] = x * m[1] + y * m[3] + m[5];
651 -- drawForm(tPat->getContentStream(), tPat->getResDict(),
652 -- m1, tPat->getBBox());
653 -+ bool shouldDrawForm = gTrue;
654 -+ std::set<int>::iterator patternRefIt;
655 -+ const int patternRefNum = tPat->getPatternRefNum();
656 -+ if (patternRefNum != -1) {
657 -+ if (formsDrawing.find(patternRefNum) == formsDrawing.end()) {
658 -+ patternRefIt = formsDrawing.insert(patternRefNum).first;
659 -+ } else {
660 -+ shouldDrawForm = gFalse;
661 -+ }
662 -+ }
663 -+
664 -+ if (shouldDrawForm) {
665 -+ out->updatePatternOpacity(state);
666 -+ for (yi = yi0; yi < yi1; ++yi) {
667 -+ for (xi = xi0; xi < xi1; ++xi) {
668 -+ x = xi * xstep;
669 -+ y = yi * ystep;
670 -+ m1[4] = x * m[0] + y * m[2] + m[4];
671 -+ m1[5] = x * m[1] + y * m[3] + m[5];
672 -+ drawForm(tPat->getContentStream(), tPat->getResDict(),
673 -+ m1, tPat->getBBox());
674 -+ }
675 -+ }
676 -+ out->clearPatternOpacity(state);
677 -+ if (patternRefNum != -1) {
678 -+ formsDrawing.erase(patternRefIt);
679 - }
680 - }
681 -- out->clearPatternOpacity(state);
682 - }
683 -
684 - // restore graphics state
685 -diff --git a/poppler/GfxState.cc b/poppler/GfxState.cc
686 -index f61f8124..90030b10 100644
687 ---- a/poppler/GfxState.cc
688 -+++ b/poppler/GfxState.cc
689 -@@ -3446,14 +3446,17 @@ void GfxPatternColorSpace::getDefaultColor(GfxColor *color) {
690 - // Pattern
691 - //------------------------------------------------------------------------
692 -
693 --GfxPattern::GfxPattern(int typeA) {
694 -- type = typeA;
695 -+GfxPattern::GfxPattern(int typeA, int patternRefNumA)
696 -+ : type(typeA)
697 -+ , patternRefNum(patternRefNumA)
698 -+{
699 -+
700 - }
701 -
702 - GfxPattern::~GfxPattern() {
703 - }
704 -
705 --GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state) {
706 -+GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state, int patternRefNum) {
707 - GfxPattern *pattern;
708 - Object obj1;
709 -
710 -@@ -3466,9 +3469,9 @@ GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, Gf
711 - }
712 - pattern = NULL;
713 - if (obj1.isInt() && obj1.getInt() == 1) {
714 -- pattern = GfxTilingPattern::parse(obj);
715 -+ pattern = GfxTilingPattern::parse(obj, patternRefNum);
716 - } else if (obj1.isInt() && obj1.getInt() == 2) {
717 -- pattern = GfxShadingPattern::parse(res, obj, out, state);
718 -+ pattern = GfxShadingPattern::parse(res, obj, out, state, patternRefNum);
719 - }
720 - obj1.free();
721 - return pattern;
722 -@@ -3478,7 +3481,7 @@ GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, Gf
723 - // GfxTilingPattern
724 - //------------------------------------------------------------------------
725 -
726 --GfxTilingPattern *GfxTilingPattern::parse(Object *patObj) {
727 -+GfxTilingPattern *GfxTilingPattern::parse(Object *patObj, int patternRefNum) {
728 - GfxTilingPattern *pat;
729 - Dict *dict;
730 - int paintTypeA, tilingTypeA;
731 -@@ -3555,7 +3558,7 @@ GfxTilingPattern *GfxTilingPattern::parse(Object *patObj) {
732 - obj1.free();
733 -
734 - pat = new GfxTilingPattern(paintTypeA, tilingTypeA, bboxA, xStepA, yStepA,
735 -- &resDictA, matrixA, patObj);
736 -+ &resDictA, matrixA, patObj, patternRefNum);
737 - resDictA.free();
738 - return pat;
739 - }
740 -@@ -3563,8 +3566,8 @@ GfxTilingPattern *GfxTilingPattern::parse(Object *patObj) {
741 - GfxTilingPattern::GfxTilingPattern(int paintTypeA, int tilingTypeA,
742 - double *bboxA, double xStepA, double yStepA,
743 - Object *resDictA, double *matrixA,
744 -- Object *contentStreamA):
745 -- GfxPattern(1)
746 -+ Object *contentStreamA, int patternRefNumA) :
747 -+ GfxPattern(1, patternRefNumA)
748 - {
749 - int i;
750 -
751 -@@ -3589,14 +3592,14 @@ GfxTilingPattern::~GfxTilingPattern() {
752 -
753 - GfxPattern *GfxTilingPattern::copy() {
754 - return new GfxTilingPattern(paintType, tilingType, bbox, xStep, yStep,
755 -- &resDict, matrix, &contentStream);
756 -+ &resDict, matrix, &contentStream, getPatternRefNum());
757 - }
758 -
759 - //------------------------------------------------------------------------
760 - // GfxShadingPattern
761 - //------------------------------------------------------------------------
762 -
763 --GfxShadingPattern *GfxShadingPattern::parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state) {
764 -+GfxShadingPattern *GfxShadingPattern::parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state, int patternRefNum) {
765 - Dict *dict;
766 - GfxShading *shadingA;
767 - double matrixA[6];
768 -@@ -3629,11 +3632,11 @@ GfxShadingPattern *GfxShadingPattern::parse(GfxResources *res, Object *patObj, O
769 - }
770 - obj1.free();
771 -
772 -- return new GfxShadingPattern(shadingA, matrixA);
773 -+ return new GfxShadingPattern(shadingA, matrixA, patternRefNum);
774 - }
775 -
776 --GfxShadingPattern::GfxShadingPattern(GfxShading *shadingA, double *matrixA):
777 -- GfxPattern(2)
778 -+GfxShadingPattern::GfxShadingPattern(GfxShading *shadingA, double *matrixA, int patternRefNumA):
779 -+ GfxPattern(2, patternRefNumA)
780 - {
781 - int i;
782 -
783 -@@ -3648,7 +3651,7 @@ GfxShadingPattern::~GfxShadingPattern() {
784 - }
785 -
786 - GfxPattern *GfxShadingPattern::copy() {
787 -- return new GfxShadingPattern(shading->copy(), matrix);
788 -+ return new GfxShadingPattern(shading->copy(), matrix, getPatternRefNum());
789 - }
790 -
791 - //------------------------------------------------------------------------
792 -diff --git a/poppler/GfxState.h b/poppler/GfxState.h
793 -index 7bcedf2a..4b13fb2a 100644
794 ---- a/poppler/GfxState.h
795 -+++ b/poppler/GfxState.h
796 -@@ -762,18 +762,21 @@ private:
797 - class GfxPattern {
798 - public:
799 -
800 -- GfxPattern(int typeA);
801 -+ GfxPattern(int typeA, int patternRefNumA);
802 - virtual ~GfxPattern();
803 -
804 -- static GfxPattern *parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state);
805 -+ static GfxPattern *parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state, int patternRefNum);
806 -
807 - virtual GfxPattern *copy() = 0;
808 -
809 - int getType() { return type; }
810 -
811 -+ int getPatternRefNum() const { return patternRefNum; }
812 -+
813 - private:
814 -
815 - int type;
816 -+ int patternRefNum;
817 - };
818 -
819 - //------------------------------------------------------------------------
820 -@@ -783,7 +786,7 @@ private:
821 - class GfxTilingPattern: public GfxPattern {
822 - public:
823 -
824 -- static GfxTilingPattern *parse(Object *patObj);
825 -+ static GfxTilingPattern *parse(Object *patObj, int patternRefNum);
826 - ~GfxTilingPattern();
827 -
828 - GfxPattern *copy() override;
829 -@@ -803,7 +806,7 @@ private:
830 - GfxTilingPattern(int paintTypeA, int tilingTypeA,
831 - double *bboxA, double xStepA, double yStepA,
832 - Object *resDictA, double *matrixA,
833 -- Object *contentStreamA);
834 -+ Object *contentStreamA, int patternRefNumA);
835 -
836 - int paintType;
837 - int tilingType;
838 -@@ -821,7 +824,7 @@ private:
839 - class GfxShadingPattern: public GfxPattern {
840 - public:
841 -
842 -- static GfxShadingPattern *parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state);
843 -+ static GfxShadingPattern *parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state, int patternRefNum);
844 - ~GfxShadingPattern();
845 -
846 - GfxPattern *copy() override;
847 -@@ -831,7 +834,7 @@ public:
848 -
849 - private:
850 -
851 -- GfxShadingPattern(GfxShading *shadingA, double *matrixA);
852 -+ GfxShadingPattern(GfxShading *shadingA, double *matrixA, int patternRefNumA);
853 -
854 - GfxShading *shading;
855 - double matrix[6];
856 ---
857 -2.14.1
858 -
859
860 diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-15565.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-15565.patch
861 deleted file mode 100644
862 index 7e4db3f0445..00000000000
863 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-15565.patch
864 +++ /dev/null
865 @@ -1,28 +0,0 @@
866 -From 19ebd40547186a8ea6da08c8d8e2a6d6b7e84f5d Mon Sep 17 00:00:00 2001
867 -From: Albert Astals Cid <aacid@×××.org>
868 -Date: Fri, 13 Oct 2017 00:55:49 +0200
869 -Subject: [PATCH] CairoOutputDev: Fix crash in broken files
870 -
871 -Bug #103016
872 ----
873 - poppler/CairoOutputDev.cc | 4 +++-
874 - 1 file changed, 3 insertions(+), 1 deletion(-)
875 -
876 -diff --git a/poppler/CairoOutputDev.cc b/poppler/CairoOutputDev.cc
877 -index ffd39ef7..80f7a99e 100644
878 ---- a/poppler/CairoOutputDev.cc
879 -+++ b/poppler/CairoOutputDev.cc
880 -@@ -2714,7 +2714,9 @@ void CairoOutputDev::drawSoftMaskedImage(GfxState *state, Object *ref, Stream *s
881 - for (y = 0; y < maskHeight; y++) {
882 - maskDest = (unsigned char *) (maskBuffer + y * row_stride);
883 - pix = maskImgStr->getLine();
884 -- maskColorMap->getGrayLine (pix, maskDest, maskWidth);
885 -+ if (likely(pix != nullptr)) {
886 -+ maskColorMap->getGrayLine (pix, maskDest, maskWidth);
887 -+ }
888 - }
889 -
890 - maskImgStr->close();
891 ---
892 -2.14.1
893 -
894
895 diff --git a/app-text/poppler/poppler-0.57.0-r1.ebuild b/app-text/poppler/poppler-0.57.0-r1.ebuild
896 deleted file mode 100644
897 index 5d861ea5fff..00000000000
898 --- a/app-text/poppler/poppler-0.57.0-r1.ebuild
899 +++ /dev/null
900 @@ -1,158 +0,0 @@
901 -# Copyright 1999-2018 Gentoo Foundation
902 -# Distributed under the terms of the GNU General Public License v2
903 -
904 -EAPI=6
905 -
906 -inherit cmake-utils toolchain-funcs xdg-utils
907 -
908 -if [[ "${PV}" == "9999" ]] ; then
909 - inherit git-r3
910 - EGIT_REPO_URI="git://git.freedesktop.org/git/${PN}/${PN}"
911 - SLOT="0/9999"
912 -else
913 - SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
914 - KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
915 - SLOT="0/68" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
916 -fi
917 -
918 -DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
919 -HOMEPAGE="https://poppler.freedesktop.org/"
920 -
921 -LICENSE="GPL-2"
922 -IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt4 qt5 tiff +utils"
923 -
924 -# No test data provided
925 -RESTRICT="test"
926 -
927 -COMMON_DEPEND="
928 - >=media-libs/fontconfig-2.6.0
929 - >=media-libs/freetype-2.3.9
930 - sys-libs/zlib
931 - cairo? (
932 - dev-libs/glib:2
933 - >=x11-libs/cairo-1.10.0
934 - introspection? ( >=dev-libs/gobject-introspection-1.32.1:= )
935 - )
936 - curl? ( net-misc/curl )
937 - jpeg? ( virtual/jpeg:0 )
938 - jpeg2k? ( media-libs/openjpeg:2= )
939 - lcms? ( media-libs/lcms:2 )
940 - nss? ( >=dev-libs/nss-3.19:0 )
941 - png? ( media-libs/libpng:0= )
942 - qt4? (
943 - dev-qt/qtcore:4
944 - dev-qt/qtgui:4
945 - )
946 - qt5? (
947 - dev-qt/qtcore:5
948 - dev-qt/qtgui:5
949 - dev-qt/qtxml:5
950 - )
951 - tiff? ( media-libs/tiff:0 )
952 -"
953 -DEPEND="${COMMON_DEPEND}
954 - virtual/pkgconfig
955 -"
956 -RDEPEND="${COMMON_DEPEND}
957 - cjk? ( >=app-text/poppler-data-0.4.7 )
958 -"
959 -
960 -DOCS=(AUTHORS NEWS README README-XPDF TODO)
961 -
962 -PATCHES=(
963 - "${FILESDIR}/${PN}-0.26.0-qt5-dependencies.patch"
964 - "${FILESDIR}/${PN}-0.28.1-fix-multilib-configuration.patch"
965 - "${FILESDIR}/${PN}-0.53.0-respect-cflags.patch"
966 - "${FILESDIR}/${PN}-0.33.0-openjpeg2.patch"
967 - "${FILESDIR}/${PN}-0.40-FindQt4.patch"
968 - "${FILESDIR}/${P}-disable-internal-jpx.patch"
969 - # Fedora backports from upstream
970 - "${FILESDIR}/${P}-CVE-2017-14517.patch"
971 - "${FILESDIR}/${P}-CVE-2017-14518.patch"
972 - "${FILESDIR}/${P}-CVE-2017-14519.patch"
973 - "${FILESDIR}/${P}-CVE-2017-14520.patch"
974 - "${FILESDIR}/${P}-CVE-2017-14617.patch"
975 - "${FILESDIR}/${P}-CVE-2017-14926.patch"
976 - "${FILESDIR}/${P}-CVE-2017-14927.patch"
977 - "${FILESDIR}/${P}-CVE-2017-14928.patch"
978 - "${FILESDIR}/${P}-CVE-2017-14929.patch"
979 - "${FILESDIR}/${P}-CVE-2017-15565.patch"
980 -)
981 -
982 -src_prepare() {
983 - cmake-utils_src_prepare
984 -
985 - # Clang doesn't grok this flag, the configure nicely tests that, but
986 - # cmake just uses it, so remove it if we use clang
987 - if [[ ${CC} == clang ]] ; then
988 - sed -i -e 's/-fno-check-new//' cmake/modules/PopplerMacros.cmake || die
989 - fi
990 -
991 - if ! grep -Fq 'cmake_policy(SET CMP0002 OLD)' CMakeLists.txt ; then
992 - sed '/^cmake_minimum_required/acmake_policy(SET CMP0002 OLD)' \
993 - -i CMakeLists.txt || die
994 - else
995 - einfo "policy(SET CMP0002 OLD) - workaround can be removed"
996 - fi
997 -
998 - if tc-is-clang && [[ ${CHOST} == *-darwin* ]] ; then
999 - # we need to up the C++ version, bug #622526
1000 - export CXX="$(tc-getCXX) -std=c++11"
1001 - fi
1002 -}
1003 -
1004 -src_configure() {
1005 - xdg_environment_reset
1006 - local mycmakeargs=(
1007 - -DBUILD_GTK_TESTS=OFF
1008 - -DBUILD_QT4_TESTS=OFF
1009 - -DBUILD_QT5_TESTS=OFF
1010 - -DBUILD_CPP_TESTS=OFF
1011 - -DENABLE_SPLASH=ON
1012 - -DENABLE_ZLIB=ON
1013 - -DENABLE_ZLIB_UNCOMPRESS=OFF
1014 - -DENABLE_XPDF_HEADERS=ON
1015 - -DENABLE_LIBCURL="$(usex curl)"
1016 - -DENABLE_CPP="$(usex cxx)"
1017 - -DENABLE_UTILS="$(usex utils)"
1018 - -DSPLASH_CMYK=OFF
1019 - -DUSE_FIXEDPOINT=OFF
1020 - -DUSE_FLOAT=OFF
1021 - -DWITH_Cairo="$(usex cairo)"
1022 - -DWITH_GObjectIntrospection="$(usex introspection)"
1023 - -DWITH_JPEG="$(usex jpeg)"
1024 - -DWITH_NSS3="$(usex nss)"
1025 - -DWITH_PNG="$(usex png)"
1026 - -DWITH_Qt4="$(usex qt4)"
1027 - $(cmake-utils_use_find_package qt5 Qt5Core)
1028 - -DWITH_TIFF="$(usex tiff)"
1029 - )
1030 - if use jpeg; then
1031 - mycmakeargs+=(-DENABLE_DCTDECODER=libjpeg)
1032 - else
1033 - mycmakeargs+=(-DENABLE_DCTDECODER=none)
1034 - fi
1035 - if use jpeg2k; then
1036 - mycmakeargs+=(-DENABLE_LIBOPENJPEG=openjpeg2)
1037 - else
1038 - mycmakeargs+=(-DENABLE_LIBOPENJPEG=none)
1039 - fi
1040 - if use lcms; then
1041 - mycmakeargs+=(-DENABLE_CMS=lcms2)
1042 - else
1043 - mycmakeargs+=(-DENABLE_CMS=)
1044 - fi
1045 -
1046 - cmake-utils_src_configure
1047 -}
1048 -
1049 -src_install() {
1050 - cmake-utils_src_install
1051 -
1052 - # live version doesn't provide html documentation
1053 - if use cairo && use doc && [[ ${PV} != 9999 ]]; then
1054 - # For now install gtk-doc there
1055 - insinto /usr/share/gtk-doc/html/poppler
1056 - doins -r "${S}"/glib/reference/html/*
1057 - fi
1058 -}
1059
1060 diff --git a/app-text/poppler/poppler-0.61.1.ebuild b/app-text/poppler/poppler-0.61.1.ebuild
1061 deleted file mode 100644
1062 index c4516a9b703..00000000000
1063 --- a/app-text/poppler/poppler-0.61.1.ebuild
1064 +++ /dev/null
1065 @@ -1,145 +0,0 @@
1066 -# Copyright 1999-2018 Gentoo Foundation
1067 -# Distributed under the terms of the GNU General Public License v2
1068 -
1069 -EAPI=6
1070 -
1071 -inherit cmake-utils flag-o-matic toolchain-funcs xdg-utils
1072 -
1073 -if [[ "${PV}" == "9999" ]] ; then
1074 - inherit git-r3
1075 - EGIT_REPO_URI="git://git.freedesktop.org/git/${PN}/${PN}"
1076 - SLOT="0/9999"
1077 -else
1078 - SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
1079 - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
1080 - SLOT="0/72" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
1081 -fi
1082 -
1083 -DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
1084 -HOMEPAGE="https://poppler.freedesktop.org/"
1085 -
1086 -LICENSE="GPL-2"
1087 -IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt4 qt5 tiff +utils"
1088 -
1089 -# No test data provided
1090 -RESTRICT="test"
1091 -
1092 -COMMON_DEPEND="
1093 - >=media-libs/fontconfig-2.6.0
1094 - >=media-libs/freetype-2.3.9
1095 - sys-libs/zlib
1096 - cairo? (
1097 - dev-libs/glib:2
1098 - >=x11-libs/cairo-1.10.0
1099 - introspection? ( >=dev-libs/gobject-introspection-1.32.1:= )
1100 - )
1101 - curl? ( net-misc/curl )
1102 - jpeg? ( virtual/jpeg:0 )
1103 - jpeg2k? ( media-libs/openjpeg:2= )
1104 - lcms? ( media-libs/lcms:2 )
1105 - nss? ( >=dev-libs/nss-3.19:0 )
1106 - png? ( media-libs/libpng:0= )
1107 - qt4? (
1108 - dev-qt/qtcore:4
1109 - dev-qt/qtgui:4
1110 - )
1111 - qt5? (
1112 - dev-qt/qtcore:5
1113 - dev-qt/qtgui:5
1114 - dev-qt/qtxml:5
1115 - )
1116 - tiff? ( media-libs/tiff:0 )
1117 -"
1118 -DEPEND="${COMMON_DEPEND}
1119 - virtual/pkgconfig
1120 -"
1121 -RDEPEND="${COMMON_DEPEND}
1122 - cjk? ( >=app-text/poppler-data-0.4.7 )
1123 -"
1124 -
1125 -DOCS=(AUTHORS NEWS README README-XPDF)
1126 -
1127 -PATCHES=(
1128 - "${FILESDIR}/${PN}-0.60.1-qt5-dependencies.patch"
1129 - "${FILESDIR}/${PN}-0.28.1-fix-multilib-configuration.patch"
1130 - "${FILESDIR}/${PN}-0.61.0-respect-cflags.patch"
1131 - "${FILESDIR}/${PN}-0.33.0-openjpeg2.patch"
1132 - "${FILESDIR}/${PN}-0.40-FindQt4.patch"
1133 - "${FILESDIR}/${PN}-0.57.0-disable-internal-jpx.patch"
1134 -)
1135 -
1136 -src_prepare() {
1137 - cmake-utils_src_prepare
1138 -
1139 - # Clang doesn't grok this flag, the configure nicely tests that, but
1140 - # cmake just uses it, so remove it if we use clang
1141 - if [[ ${CC} == clang ]] ; then
1142 - sed -i -e 's/-fno-check-new//' cmake/modules/PopplerMacros.cmake || die
1143 - fi
1144 -
1145 - if ! grep -Fq 'cmake_policy(SET CMP0002 OLD)' CMakeLists.txt ; then
1146 - sed '/^cmake_minimum_required/acmake_policy(SET CMP0002 OLD)' \
1147 - -i CMakeLists.txt || die
1148 - else
1149 - einfo "policy(SET CMP0002 OLD) - workaround can be removed"
1150 - fi
1151 -
1152 - # we need to up the C++ version, bug #622526, #643278
1153 - append-cxxflags -std=c++11
1154 -}
1155 -
1156 -src_configure() {
1157 - xdg_environment_reset
1158 - local mycmakeargs=(
1159 - -DBUILD_GTK_TESTS=OFF
1160 - -DBUILD_QT4_TESTS=OFF
1161 - -DBUILD_QT5_TESTS=OFF
1162 - -DBUILD_CPP_TESTS=OFF
1163 - -DENABLE_SPLASH=ON
1164 - -DENABLE_ZLIB=ON
1165 - -DENABLE_ZLIB_UNCOMPRESS=OFF
1166 - -DENABLE_XPDF_HEADERS=ON
1167 - -DENABLE_LIBCURL="$(usex curl)"
1168 - -DENABLE_CPP="$(usex cxx)"
1169 - -DENABLE_UTILS="$(usex utils)"
1170 - -DSPLASH_CMYK=OFF
1171 - -DUSE_FIXEDPOINT=OFF
1172 - -DUSE_FLOAT=OFF
1173 - -DWITH_Cairo="$(usex cairo)"
1174 - -DWITH_GObjectIntrospection="$(usex introspection)"
1175 - -DWITH_JPEG="$(usex jpeg)"
1176 - -DWITH_NSS3="$(usex nss)"
1177 - -DWITH_PNG="$(usex png)"
1178 - -DWITH_Qt4="$(usex qt4)"
1179 - $(cmake-utils_use_find_package qt5 Qt5Core)
1180 - -DWITH_TIFF="$(usex tiff)"
1181 - )
1182 - if use jpeg; then
1183 - mycmakeargs+=(-DENABLE_DCTDECODER=libjpeg)
1184 - else
1185 - mycmakeargs+=(-DENABLE_DCTDECODER=none)
1186 - fi
1187 - if use jpeg2k; then
1188 - mycmakeargs+=(-DENABLE_LIBOPENJPEG=openjpeg2)
1189 - else
1190 - mycmakeargs+=(-DENABLE_LIBOPENJPEG=none)
1191 - fi
1192 - if use lcms; then
1193 - mycmakeargs+=(-DENABLE_CMS=lcms2)
1194 - else
1195 - mycmakeargs+=(-DENABLE_CMS=)
1196 - fi
1197 -
1198 - cmake-utils_src_configure
1199 -}
1200 -
1201 -src_install() {
1202 - cmake-utils_src_install
1203 -
1204 - # live version doesn't provide html documentation
1205 - if use cairo && use doc && [[ ${PV} != 9999 ]]; then
1206 - # For now install gtk-doc there
1207 - insinto /usr/share/gtk-doc/html/poppler
1208 - doins -r "${S}"/glib/reference/html/*
1209 - fi
1210 -}