summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2017-11-23 17:53:41 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2017-11-23 22:12:13 +0100
commitfe12fcb87e86364127969ec37a308d0731d58084 (patch)
tree102386bbb9a0fe82541a3c6a462a3c0e60ae5833 /app-text/poppler/files
parentapp-text/convmv: Bump to v2.04 (diff)
downloadgentoo-fe12fcb87e86364127969ec37a308d0731d58084.tar.gz
gentoo-fe12fcb87e86364127969ec37a308d0731d58084.tar.bz2
gentoo-fe12fcb87e86364127969ec37a308d0731d58084.zip
app-text/poppler: Security cleanup
Bug: https://bugs.gentoo.org/627392 Package-Manager: Portage-2.3.16, Repoman-2.3.6
Diffstat (limited to 'app-text/poppler/files')
-rw-r--r--app-text/poppler/files/cairo-qt-experimental/0001-Cairo-backend-added-to-Qt4-wrapper.patch199
-rw-r--r--app-text/poppler/files/cairo-qt-experimental/0002-Setting-default-Qt4-backend-to-Cairo.patch25
-rw-r--r--app-text/poppler/files/cairo-qt-experimental/0003-Forcing-subpixel-rendering-in-Cairo-backend.patch30
-rw-r--r--app-text/poppler/files/cairo-qt-experimental/0004-Enabling-slight-hinting-in-Cairo-Backend.patch45
-rw-r--r--app-text/poppler/files/poppler-0.28.1-respect-cflags.patch48
5 files changed, 0 insertions, 347 deletions
diff --git a/app-text/poppler/files/cairo-qt-experimental/0001-Cairo-backend-added-to-Qt4-wrapper.patch b/app-text/poppler/files/cairo-qt-experimental/0001-Cairo-backend-added-to-Qt4-wrapper.patch
deleted file mode 100644
index 2246b29b1340..000000000000
--- a/app-text/poppler/files/cairo-qt-experimental/0001-Cairo-backend-added-to-Qt4-wrapper.patch
+++ /dev/null
@@ -1,199 +0,0 @@
-From e8fcbaca23878f0edd2015440eec55aaba0e8f9f Mon Sep 17 00:00:00 2001
-From: Paul Gideon Dann <pdgiddie@gmail.com>
-Date: Wed, 20 May 2009 11:42:28 +0100
-Subject: [PATCH 1/4] Cairo backend added to Qt4 wrapper
-
----
- qt4/src/CMakeLists.txt | 15 ++++++++++
- qt4/src/poppler-document.cc | 3 ++
- qt4/src/poppler-page.cc | 70 +++++++++++++++++++++++++++++++++++++++++++++
- qt4/src/poppler-qt4.h | 3 +-
- qt4/tests/CMakeLists.txt | 5 ++++
- 5 files changed, 95 insertions(+), 1 deletion(-)
-
-diff --git a/qt4/src/CMakeLists.txt b/qt4/src/CMakeLists.txt
-index 189eca2..5338b55 100644
---- a/qt4/src/CMakeLists.txt
-+++ b/qt4/src/CMakeLists.txt
-@@ -6,6 +6,11 @@ include_directories(
- ${CMAKE_CURRENT_BINARY_DIR}
- )
-
-+if (HAVE_CAIRO)
-+ include_directories(${CAIRO_INCLUDE_DIRS})
-+ add_definitions(${CAIRO_CFLAGS})
-+endif (HAVE_CAIRO)
-+
- set(poppler_qt4_SRCS
- poppler-annotation.cc
- poppler-document.cc
-@@ -28,10 +33,20 @@ set(poppler_qt4_SRCS
- poppler-media.cc
- ArthurOutputDev.cc
- )
-+if (HAVE_CAIRO)
-+ set(poppler_qt4_SRCS ${poppler_qt4_SRCS}
-+ ${CMAKE_SOURCE_DIR}/poppler/CairoOutputDev.cc
-+ ${CMAKE_SOURCE_DIR}/poppler/CairoRescaleBox.cc
-+ ${CMAKE_SOURCE_DIR}/poppler/CairoFontEngine.cc
-+ )
-+endif(HAVE_CAIRO)
- qt4_automoc(${poppler_qt4_SRCS})
- add_library(poppler-qt4 SHARED ${poppler_qt4_SRCS})
- set_target_properties(poppler-qt4 PROPERTIES VERSION 4.9.0 SOVERSION 4)
- target_link_libraries(poppler-qt4 poppler ${QT4_QTCORE_LIBRARY} ${QT4_QTGUI_LIBRARY} ${QT4_QTXML_LIBRARY})
-+if (HAVE_CAIRO)
-+ target_link_libraries(poppler-qt4 ${CAIRO_LIBRARIES})
-+endif (HAVE_CAIRO)
- if(MSVC)
- target_link_libraries(poppler-qt4 poppler ${poppler_LIBS})
- endif(MSVC)
-diff --git a/qt4/src/poppler-document.cc b/qt4/src/poppler-document.cc
-index 94f997d..6decaaf 100644
---- a/qt4/src/poppler-document.cc
-+++ b/qt4/src/poppler-document.cc
-@@ -547,6 +547,9 @@ namespace Poppler {
- ret << Document::SplashBackend;
- #endif
- ret << Document::ArthurBackend;
-+#if defined(HAVE_CAIRO)
-+ ret << Document::CairoBackend;
-+#endif
- return ret;
- }
-
-diff --git a/qt4/src/poppler-page.cc b/qt4/src/poppler-page.cc
-index 83bcf4a..df1d344 100644
---- a/qt4/src/poppler-page.cc
-+++ b/qt4/src/poppler-page.cc
-@@ -40,6 +40,7 @@
- #include <QtGui/QPainter>
-
- #include <config.h>
-+#include <math.h>
- #include <PDFDoc.h>
- #include <Catalog.h>
- #include <Form.h>
-@@ -53,6 +54,9 @@
- #include <SplashOutputDev.h>
- #include <splash/SplashBitmap.h>
- #endif
-+#if defined(HAVE_CAIRO)
-+#include <CairoOutputDev.h>
-+#endif
-
- #include "poppler-private.h"
- #include "poppler-page-transition-private.h"
-@@ -405,6 +409,70 @@ QImage Page::renderToImage(double xres, double yres, int x, int y, int w, int h,
- img = tmpimg;
- break;
- }
-+ case Poppler::Document::CairoBackend:
-+ {
-+#if defined(HAVE_CAIRO)
-+ CairoOutputDev *output_dev = new CairoOutputDev();
-+ output_dev->startDoc(m_page->parentDoc->doc);
-+ int buffer_width, buffer_height, rotate;
-+ cairo_surface_t *surface;
-+ cairo_t *cairo;
-+
-+ // If w or h are -1, that indicates the whole page, so we need to
-+ // calculate how many pixels that corresponds to. Otherwise, we can use w
-+ // or h directly for our buffer size.
-+ const QSize pageSize = this->pageSize();
-+ if (w == -1) {
-+ const double xscale = xres / 72.0;
-+ const double width = pageSize.width();;
-+ buffer_width = (int) ceil(width * xscale);
-+ } else {
-+ buffer_width = w;
-+ }
-+ if (h == -1) {
-+ const double yscale = yres / 72.0;
-+ const double height = pageSize.height();
-+ buffer_height = (int) ceil(height * yscale);
-+ } else {
-+ buffer_height = h;
-+ }
-+
-+ rotate = rotation + m_page->page->getRotate();
-+
-+ // FIXME: Okular never provides a rotation value, so I don't have any way
-+ // of testing this right now. The result is that subpixels are ordered
-+ // incorrectly when the page is rotated.
-+
-+ //if (rotate == 90 || rotate == 270) {
-+ // const double temp = height;
-+ // height = width;
-+ // width = temp;
-+ //}
-+
-+ img = QImage(buffer_width, buffer_height, QImage::Format_ARGB32);
-+ img.fill(Qt::white); // Never transparent
-+
-+ surface = cairo_image_surface_create_for_data(
-+ img.bits(),
-+ CAIRO_FORMAT_ARGB32,
-+ buffer_width, buffer_height,
-+ img.bytesPerLine());
-+
-+ cairo = cairo_create(surface);
-+ output_dev->setCairo(cairo);
-+
-+ m_page->parentDoc->doc->displayPageSlice(
-+ output_dev, m_page->index + 1, xres, yres, rotation, false, true,
-+ false, x, y, w, h);
-+
-+ // Clean up
-+ output_dev->setCairo(NULL);
-+ cairo_destroy(cairo);
-+ cairo_surface_destroy(surface);
-+ delete output_dev;
-+#endif
-+ break;
-+ }
- }
-
- return img;
-@@ -447,6 +515,8 @@ bool Page::renderToPainter(QPainter* painter, double xres, double yres, int x, i
- painter->restore();
- return true;
- }
-+ case Poppler::Document::CairoBackend:
-+ return false;
- }
- return false;
- }
-diff --git a/qt4/src/poppler-qt4.h b/qt4/src/poppler-qt4.h
-index c0340a4..118f8ba 100644
---- a/qt4/src/poppler-qt4.h
-+++ b/qt4/src/poppler-qt4.h
-@@ -886,7 +886,8 @@ delete it;
- */
- enum RenderBackend {
- SplashBackend, ///< Splash backend
-- ArthurBackend ///< Arthur (Qt4) backend
-+ ArthurBackend, ///< Arthur (Qt4) backend
-+ CairoBackend ///< Cairo backend
- };
-
- /**
-diff --git a/qt4/tests/CMakeLists.txt b/qt4/tests/CMakeLists.txt
-index bba868f..8c40471 100644
---- a/qt4/tests/CMakeLists.txt
-+++ b/qt4/tests/CMakeLists.txt
-@@ -8,6 +8,11 @@ include_directories(
- ${QT4_INCLUDE_DIR}
- )
-
-+if (HAVE_CAIRO)
-+ include_directories(${CAIRO_INCLUDE_DIRS})
-+ add_definitions(${CAIRO_CFLAGS})
-+endif (HAVE_CAIRO)
-+
- macro(QT4_ADD_SIMPLETEST exe source)
- string(REPLACE "-" "" test_name ${exe})
- set(${test_name}_SOURCES
---
-2.7.3
-
diff --git a/app-text/poppler/files/cairo-qt-experimental/0002-Setting-default-Qt4-backend-to-Cairo.patch b/app-text/poppler/files/cairo-qt-experimental/0002-Setting-default-Qt4-backend-to-Cairo.patch
deleted file mode 100644
index 3a360394182e..000000000000
--- a/app-text/poppler/files/cairo-qt-experimental/0002-Setting-default-Qt4-backend-to-Cairo.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 7ddcf7bf4296ed58dc316b0dd6b000057740e118 Mon Sep 17 00:00:00 2001
-From: Paul Gideon Dann <pdgiddie@gmail.com>
-Date: Wed, 20 May 2009 13:17:29 +0100
-Subject: [PATCH 2/4] Setting default Qt4 backend to Cairo
-
----
- qt4/src/poppler-private.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/qt4/src/poppler-private.cc b/qt4/src/poppler-private.cc
-index cbf21b1..1c7f16c 100644
---- a/qt4/src/poppler-private.cc
-+++ b/qt4/src/poppler-private.cc
-@@ -236,7 +236,7 @@ namespace Debug {
- void DocumentData::init()
- {
- m_fontInfoIterator = 0;
-- m_backend = Document::SplashBackend;
-+ m_backend = Document::CairoBackend;
- paperColor = Qt::white;
- m_hints = 0;
- m_optContentModel = 0;
---
-2.7.3
-
diff --git a/app-text/poppler/files/cairo-qt-experimental/0003-Forcing-subpixel-rendering-in-Cairo-backend.patch b/app-text/poppler/files/cairo-qt-experimental/0003-Forcing-subpixel-rendering-in-Cairo-backend.patch
deleted file mode 100644
index 21547b951802..000000000000
--- a/app-text/poppler/files/cairo-qt-experimental/0003-Forcing-subpixel-rendering-in-Cairo-backend.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From a9a6a3fcf4f2bf62e83d325a790624241084ad72 Mon Sep 17 00:00:00 2001
-From: Paul Gideon Dann <pdgiddie@gmail.com>
-Date: Wed, 20 May 2009 13:06:48 +0100
-Subject: [PATCH 3/4] Forcing subpixel rendering in Cairo backend
-
----
- poppler/CairoOutputDev.cc | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/poppler/CairoOutputDev.cc b/poppler/CairoOutputDev.cc
-index d0d6cb4..50e64f9 100644
---- a/poppler/CairoOutputDev.cc
-+++ b/poppler/CairoOutputDev.cc
-@@ -203,6 +203,13 @@ void CairoOutputDev::setCairo(cairo_t *cairo)
- }
- if (cairo != NULL) {
- this->cairo = cairo_reference (cairo);
-+ {
-+ cairo_font_options_t *options = cairo_font_options_create ();
-+ cairo_get_font_options (cairo, options);
-+ cairo_font_options_set_antialias (options, CAIRO_ANTIALIAS_SUBPIXEL);
-+ cairo_set_font_options (cairo, options);
-+ cairo_font_options_destroy (options);
-+ }
- /* save the initial matrix so that we can use it for type3 fonts. */
- //XXX: is this sufficient? could we miss changes to the matrix somehow?
- cairo_get_matrix(cairo, &orig_matrix);
---
-2.7.3
-
diff --git a/app-text/poppler/files/cairo-qt-experimental/0004-Enabling-slight-hinting-in-Cairo-Backend.patch b/app-text/poppler/files/cairo-qt-experimental/0004-Enabling-slight-hinting-in-Cairo-Backend.patch
deleted file mode 100644
index 0f622323a9f0..000000000000
--- a/app-text/poppler/files/cairo-qt-experimental/0004-Enabling-slight-hinting-in-Cairo-Backend.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 1604ec6cb759b6f2b8aa006faa0ec990cd511b36 Mon Sep 17 00:00:00 2001
-From: Paul Gideon Dann <pdgiddie@gmail.com>
-Date: Thu, 21 May 2009 10:55:49 +0100
-Subject: [PATCH 4/4] Enabling slight hinting in Cairo Backend
-
-Originally suggested at:
-http://bugs.freedesktop.org/show_bug.cgi?id=3307#c20
----
- poppler/CairoFontEngine.cc | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/poppler/CairoFontEngine.cc b/poppler/CairoFontEngine.cc
-index 3cff917..75a1c50 100644
---- a/poppler/CairoFontEngine.cc
-+++ b/poppler/CairoFontEngine.cc
-@@ -132,7 +132,7 @@ CairoFont::getSubstitutionCorrection(GfxFont *gfxFont)
- cairo_matrix_t m;
- cairo_matrix_init_identity(&m);
- cairo_font_options_t *options = cairo_font_options_create();
-- cairo_font_options_set_hint_style(options, CAIRO_HINT_STYLE_NONE);
-+ cairo_font_options_set_hint_style(options, CAIRO_HINT_STYLE_SLIGHT);
- cairo_font_options_set_hint_metrics(options, CAIRO_HINT_METRICS_OFF);
- cairo_scaled_font_t *scaled_font = cairo_scaled_font_create(cairo_font_face, &m, &m, options);
-
-@@ -189,7 +189,7 @@ _ft_new_face_uncached (FT_Library lib,
- }
-
- font_face = cairo_ft_font_face_create_for_ft_face (face,
-- FT_LOAD_NO_HINTING |
-+ FT_LOAD_TARGET_LIGHT |
- FT_LOAD_NO_BITMAP);
- if (cairo_font_face_set_user_data (font_face,
- &_ft_cairo_key,
-@@ -358,7 +358,7 @@ _ft_new_face (FT_Library lib,
- _ft_open_faces = l;
-
- l->font_face = cairo_ft_font_face_create_for_ft_face (tmpl.face,
-- FT_LOAD_NO_HINTING |
-+ FT_LOAD_TARGET_LIGHT |
- FT_LOAD_NO_BITMAP);
- if (cairo_font_face_set_user_data (l->font_face,
- &_ft_cairo_key,
---
-2.7.3
-
diff --git a/app-text/poppler/files/poppler-0.28.1-respect-cflags.patch b/app-text/poppler/files/poppler-0.28.1-respect-cflags.patch
deleted file mode 100644
index 0b94042c8af8..000000000000
--- a/app-text/poppler/files/poppler-0.28.1-respect-cflags.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake
-index 6cadf40..7e5e6b2 100644
---- a/cmake/modules/PopplerMacros.cmake
-+++ b/cmake/modules/PopplerMacros.cmake
-@@ -98,41 +98,10 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
- set(CMAKE_BUILD_TYPE RelWithDebInfo)
- endif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
-
--if(CMAKE_COMPILER_IS_GNUCXX)
-- # set the default compile warnings
- set(DEFAULT_COMPILE_WARNINGS_NO)
- set(DEFAULT_COMPILE_WARNINGS_YES "-Wall -Wcast-align -fno-exceptions -fno-check-new -fno-common")
- 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")
-
-- set(CMAKE_CXX_FLAGS "-Wnon-virtual-dtor -Woverloaded-virtual ${CMAKE_CXX_FLAGS}")
-- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
-- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
-- set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
-- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline")
-- set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs")
-- set(CMAKE_C_FLAGS "-std=c99")
-- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g")
-- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
-- set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline")
-- set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline")
-- set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs")
--
-- poppler_check_link_flag("-Wl,--as-needed" GCC_HAS_AS_NEEDED)
-- if(GCC_HAS_AS_NEEDED)
-- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--as-needed")
-- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--as-needed")
-- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed")
-- endif(GCC_HAS_AS_NEEDED)
--endif (CMAKE_COMPILER_IS_GNUCXX)
--
--if(CMAKE_C_COMPILER MATCHES "icc")
-- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
-- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
-- set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign")
-- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign")
-- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g")
-- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
-- set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign")
-- set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign")
--endif(CMAKE_C_COMPILER MATCHES "icc")
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Woverloaded-virtual")
-
-+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")