Hello community, here is the log from the commit of package poppler for openSUSE:Factory checked in at 2016-11-25 12:03:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/poppler (Old) and /work/SRC/openSUSE:Factory/.poppler.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "poppler" Changes: -------- --- /work/SRC/openSUSE:Factory/poppler/poppler-qt.changes 2016-10-14 09:26:17.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.poppler.new/poppler-qt.changes 2016-11-25 12:03:40.000000000 +0100 @@ -1,0 +2,17 @@ +Mon Nov 21 09:09:29 UTC 2016 - [email protected] + +- Update to version 0.49.0: + + core: + - Merge type3 glyph handling from xpdf 3.04 (fdo#96667). + - Continue rendering in case of 'Singular matrix in shading + pattern fill (bgo#98623). + - Fix memory leak in parametrized gouraudTriangleShadedFill. + - Fix crash on broken files. + - PDFDoc::setDocInfoStringEntry(): treat value consisting of + just the unicode marker as an empty string. + - Fix UBSAN warning. + - Misc compile fixes. + + utils: pdfseparate: remove extra '%' in error message. + + build system: configure: Fix typo in disable nss help string. + +------------------------------------------------------------------- poppler-qt5.changes: same change poppler.changes: same change Old: ---- poppler-0.48.0.tar.xz New: ---- poppler-0.49.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ poppler-qt.spec ++++++ --- /var/tmp/diff_new_pack.qrdvTU/_old 2016-11-25 12:03:41.000000000 +0100 +++ /var/tmp/diff_new_pack.qrdvTU/_new 2016-11-25 12:03:41.000000000 +0100 @@ -21,11 +21,11 @@ Name: poppler-qt %define _name poppler -Version: 0.48.0 +Version: 0.49.0 Release: 0 # Actual version of poppler-data: %define poppler_data_version 0.4.6 -%define poppler_sover 64 +%define poppler_sover 65 %define poppler_cpp_sover 0 %define poppler_glib_sover 8 %define poppler_qt4_sover 4 poppler-qt5.spec: same change ++++++ poppler.spec ++++++ --- /var/tmp/diff_new_pack.qrdvTU/_old 2016-11-25 12:03:41.000000000 +0100 +++ /var/tmp/diff_new_pack.qrdvTU/_new 2016-11-25 12:03:41.000000000 +0100 @@ -21,11 +21,11 @@ Name: poppler %define _name poppler -Version: 0.48.0 +Version: 0.49.0 Release: 0 # Actual version of poppler-data: %define poppler_data_version 0.4.6 -%define poppler_sover 64 +%define poppler_sover 65 %define poppler_cpp_sover 0 %define poppler_glib_sover 8 %define poppler_qt4_sover 4 ++++++ poppler-0.48.0.tar.xz -> poppler-0.49.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/CMakeLists.txt new/poppler-0.49.0/CMakeLists.txt --- old/poppler-0.48.0/CMakeLists.txt 2016-10-08 17:35:47.000000000 +0200 +++ new/poppler-0.49.0/CMakeLists.txt 2016-11-15 00:10:25.000000000 +0100 @@ -22,7 +22,7 @@ endif() set(POPPLER_MAJOR_VERSION "0") -set(POPPLER_MINOR_VERSION "48") +set(POPPLER_MINOR_VERSION "49") set(POPPLER_MICRO_VERSION "0") set(POPPLER_VERSION "${POPPLER_MAJOR_VERSION}.${POPPLER_MINOR_VERSION}.${POPPLER_MICRO_VERSION}") @@ -502,7 +502,7 @@ else(MSVC) add_library(poppler SHARED ${poppler_SRCS}) endif(MSVC) -set_target_properties(poppler PROPERTIES VERSION 64.0.0 SOVERSION 64) +set_target_properties(poppler PROPERTIES VERSION 65.0.0 SOVERSION 65) target_link_libraries(poppler LINK_PRIVATE ${poppler_LIBS}) install(TARGETS poppler RUNTIME DESTINATION bin LIBRARY DESTINATION lib${LIB_SUFFIX} ARCHIVE DESTINATION lib${LIB_SUFFIX}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/ChangeLog new/poppler-0.49.0/ChangeLog --- old/poppler-0.48.0/ChangeLog 2016-10-08 18:11:40.000000000 +0200 +++ new/poppler-0.49.0/ChangeLog 2016-11-15 00:25:23.000000000 +0100 @@ -1,3 +1,186 @@ +commit 02e2d8e2c3004c36d1f8f798e5a7a30166f48f37 +Author: Albert Astals Cid <[email protected]> +Date: Tue Nov 15 00:10:43 2016 +0100 + + 0.49 + + CMakeLists.txt | 4 ++-- + NEWS | 5 ++++- + configure.ac | 2 +- + cpp/Doxyfile | 2 +- + poppler/Makefile.am | 2 +- + qt4/src/Doxyfile | 2 +- + qt5/src/Doxyfile | 2 +- + 7 files changed, 11 insertions(+), 8 deletions(-) + +commit f7f0f14e095425d171456a697804f2f34ed26426 +Author: Tor Lillqvist <[email protected]> +Date: Tue Nov 15 00:06:26 2016 +0100 + + VS 2013 has fmin() and fmax() + + NEWS | 13 +++++++++++++ + poppler/poppler-config.h.cmake | 3 ++- + 2 files changed, 15 insertions(+), 1 deletion(-) + +commit 07ac68603552b36a2a6b8ea5982f22f24f5835b1 +Author: Albert Astals Cid <[email protected]> +Date: Tue Nov 15 00:03:24 2016 +0100 + + Update (C) + + poppler/PSOutputDev.cc | 1 + + poppler/poppler-config.h.in | 1 + + utils/pdfseparate.cc | 2 +- + 3 files changed, 3 insertions(+), 1 deletion(-) + +commit b837ae3bc69c5c76f1a4e3abaeb22d0574d6b2c8 +Author: Thomas Freitag <[email protected]> +Date: Thu Nov 10 00:33:17 2016 +0100 + + Continue rendering in case of 'Singular matrix in shading pattern + fill' + + Bug #98623 + + poppler/Gfx.cc | 1 + + 1 file changed, 1 insertion(+) + +commit 6c01a48458a8b4896d606ef9bcc4af5e03393b72 +Author: Thomas Freitag <[email protected]> +Date: Wed Nov 2 23:10:01 2016 +0100 + + merge type3 glyph handling from xpdf 3.04 + + Fixes bug #96667 + + poppler/SplashOutputDev.cc | 28 +++++++++++++++++++++++----- + poppler/SplashOutputDev.h | 1 - + 2 files changed, 23 insertions(+), 6 deletions(-) + +commit f43cb73939f85952d83afc87a6dc638dc1ae311b +Author: Albert Astals Cid <[email protected]> +Date: Wed Nov 2 00:13:26 2016 +0100 + + Avoid UBSan warning about undefined downcast + + ...of this-ptr of in-construction FormFieldSignature while still in + the base + FormField ctor by simply casting the parent-class field member + when needed + + poppler/Form.cc | 83 + ++++++++++++++++++++++++++++++++------------------------- + poppler/Form.h | 9 +++---- + 2 files changed, 50 insertions(+), 42 deletions(-) + +commit 4539d0b002efbd19393fd55a6fb87b013acdb8f1 +Author: Caolán McNamara <[email protected]> +Date: Thu Oct 27 14:31:20 2016 +0200 + + PSOutputDev.cc: std::max requires <algorithm> + + poppler/PSOutputDev.cc | 1 + + 1 file changed, 1 insertion(+) + +commit 4619957cbab81ab0b25f3fdd3ed872f0ad93f074 +Author: Tor Lillqvist <[email protected]> +Date: Thu Oct 27 14:27:32 2016 +0200 + + VS 2013 has fmin() and fmax() + + poppler/poppler-config.h.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit be073d39f72f625bf3d8482ead76881150695bf4 +Author: Albert Astals Cid <[email protected]> +Date: Mon Oct 31 10:11:56 2016 +0100 + + Fix typo in disable nss help string + + Bug #98514 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 2a09ec47aef8870dba345f4045e691ffb5a59f4d +Author: Albert Astals Cid <[email protected]> +Date: Mon Oct 24 20:04:22 2016 +0200 + + Fix memory leak in parametrized gouraudTriangleShadedFill + + poppler/SplashOutputDev.cc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit 169889b8e196cfcd288e6555fb048fbbf95ba3f6 +Author: Albert Astals Cid <[email protected]> +Date: Mon Oct 24 20:04:00 2016 +0200 + + Fix crash on broken files + + splash/Splash.cc | 38 ++++++++++++++++++++------------------ + 1 file changed, 20 insertions(+), 18 deletions(-) + +commit 269a91e3b03a19acc06fd0f72356f2e48a6368a7 +Author: Jakub Alba <[email protected]> +Date: Tue Aug 23 13:20:44 2016 +0200 + + PDFDoc::setDocInfoStringEntry(): treat value consisting of just the + unicode marker as an empty string + + poppler/PDFDoc.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 43cfdf9de45e6833a2815b173f8cc945f1c5f9d6 +Author: Jakub Alba <[email protected]> +Date: Tue Aug 23 13:19:07 2016 +0200 + + goo: add GooString::hasJustUnicodeMarker(void) + + goo/GooString.cc | 2 +- + goo/GooString.h | 3 ++- + 2 files changed, 3 insertions(+), 2 deletions(-) + +commit e3c5bdf4fcd29c5d180046d1c279d3f99c1027a7 +Author: Jakub Alba <[email protected]> +Date: Fri Oct 21 23:06:23 2016 +0200 + + update copyrights + + cpp/poppler-document.cpp | 2 +- + cpp/poppler-document.h | 2 +- + cpp/poppler-embedded-file.cpp | 2 +- + cpp/poppler-global.cpp | 2 +- + cpp/poppler-private.cpp | 2 +- + cpp/poppler-private.h | 2 +- + glib/poppler-document.cc | 2 +- + glib/poppler-document.h | 2 +- + goo/GooString.cc | 2 +- + goo/GooString.h | 2 +- + poppler/Object.h | 2 +- + poppler/PDFDoc.cc | 2 +- + poppler/PDFDoc.h | 2 +- + poppler/XRef.cc | 2 +- + poppler/XRef.h | 2 +- + qt4/src/poppler-document.cc | 2 +- + qt4/src/poppler-private.cc | 2 +- + qt4/src/poppler-private.h | 2 +- + qt4/src/poppler-qt4.h | 2 +- + qt5/src/poppler-document.cc | 2 +- + qt5/src/poppler-private.cc | 2 +- + qt5/src/poppler-private.h | 2 +- + qt5/src/poppler-qt5.h | 2 +- + 23 files changed, 23 insertions(+), 23 deletions(-) + +commit 5d15a52aade68c618c356fe403ca500e74917ef7 +Author: Pino Toscano <[email protected]> +Date: Sun Oct 9 13:04:46 2016 +0200 + + pdfseparate: remove extra '%' in error message + + utils/pdfseparate.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + commit 036bcee237c814197af3324cd3697ea88d9ac6d3 Author: Albert Astals Cid <[email protected]> Date: Sat Oct 8 17:55:31 2016 +0200 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/NEWS new/poppler-0.49.0/NEWS --- old/poppler-0.48.0/NEWS 2016-10-08 17:37:16.000000000 +0200 +++ new/poppler-0.49.0/NEWS 2016-11-15 00:07:30.000000000 +0100 @@ -1,3 +1,19 @@ +Release 0.49.0 + core: + * Merge type3 glyph handling from xpdf 3.04. Bug #96667 + * Continue rendering in case of 'Singular matrix in shading pattern fill. Bug #98623 + * Fix memory leak in parametrized gouraudTriangleShadedFill + * Fix crash on broken files + * PDFDoc::setDocInfoStringEntry(): treat value consisting of just the unicode marker as an empty string + * Fix UBSAN warning + * Misc compile fixes + + utils: + * pdfseparate: remove extra '%' in error message + + build system: + * configure: Fix typo in disable nss help string + Release 0.48.0 core: * Fix crashes and memory leaks in invalid files. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/configure new/poppler-0.49.0/configure --- old/poppler-0.48.0/configure 2016-10-08 17:41:50.000000000 +0200 +++ new/poppler-0.49.0/configure 2016-11-15 00:11:46.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for poppler 0.48.0. +# Generated by GNU Autoconf 2.69 for poppler 0.49.0. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=poppler>. # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='poppler' PACKAGE_TARNAME='poppler' -PACKAGE_VERSION='0.48.0' -PACKAGE_STRING='poppler 0.48.0' +PACKAGE_VERSION='0.49.0' +PACKAGE_STRING='poppler 0.49.0' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=poppler' PACKAGE_URL='' @@ -1554,7 +1554,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures poppler 0.48.0 to adapt to many kinds of systems. +\`configure' configures poppler 0.49.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1629,7 +1629,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of poppler 0.48.0:";; + short | recursive ) echo "Configuration of poppler 0.49.0:";; esac cat <<\_ACEOF @@ -1660,7 +1660,7 @@ Use openjpeg for JPEG2000 images. 'auto' prefers openjpeg1 over openjpeg2 if both are available due to regressions in openjpeg2 [[default=auto]] - --disable-nss Do not build against libnss3. + --disable-libnss Do not build against libnss3. --disable-libtiff Don't build against libtiff. --disable-largefile omit support for large files --disable-zlib Don't build against zlib. @@ -1860,7 +1860,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -poppler configure 0.48.0 +poppler configure 0.49.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2554,7 +2554,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by poppler $as_me 0.48.0, which was +It was created by poppler $as_me 0.49.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3418,7 +3418,7 @@ # Define the identity of the package. PACKAGE='poppler' - VERSION='0.48.0' + VERSION='0.49.0' cat >>confdefs.h <<_ACEOF @@ -18500,7 +18500,7 @@ cat >>confdefs.h <<_ACEOF -#define POPPLER_VERSION "0.48.0" +#define POPPLER_VERSION "0.49.0" _ACEOF @@ -25819,11 +25819,11 @@ POPPLER_MAJOR_VERSION=0 -POPPLER_MINOR_VERSION=48 +POPPLER_MINOR_VERSION=49 POPPLER_MICRO_VERSION=0 -POPPLER_VERSION=0.48.0 +POPPLER_VERSION=0.49.0 ac_config_files="$ac_config_files Makefile goo/Makefile fofi/Makefile splash/Makefile poppler/Makefile utils/Makefile glib/Makefile glib/poppler-features.h glib/reference/Makefile glib/reference/version.xml glib/demo/Makefile test/Makefile qt4/Makefile qt4/src/Makefile qt4/tests/Makefile qt4/demos/Makefile qt5/Makefile qt5/src/Makefile qt5/tests/Makefile qt5/demos/Makefile cpp/Makefile cpp/poppler-version.h cpp/tests/Makefile poppler.pc poppler-uninstalled.pc poppler-cairo.pc poppler-cairo-uninstalled.pc poppler-splash.pc poppler-splash-uninstalled.pc poppler-glib.pc poppler-glib-uninstalled.pc poppler-qt4.pc poppler-qt4-uninstalled.pc poppler-qt5.pc poppler-qt5-uninstalled.pc poppler-cpp.pc poppler-cpp-uninstalled.pc" @@ -26483,7 +26483,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by poppler $as_me 0.48.0, which was +This file was extended by poppler $as_me 0.49.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -26549,7 +26549,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -poppler config.status 0.48.0 +poppler config.status 0.49.0 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/configure.ac new/poppler-0.49.0/configure.ac --- old/poppler-0.48.0/configure.ac 2016-10-08 17:35:15.000000000 +0200 +++ new/poppler-0.49.0/configure.ac 2016-11-15 00:09:49.000000000 +0100 @@ -1,5 +1,5 @@ m4_define([poppler_version_major],[0]) -m4_define([poppler_version_minor],[48]) +m4_define([poppler_version_minor],[49]) m4_define([poppler_version_micro],[0]) m4_define([poppler_version],[poppler_version_major.poppler_version_minor.poppler_version_micro]) @@ -262,7 +262,7 @@ dnl Test for NSS AC_ARG_ENABLE(libnss, - AC_HELP_STRING([--disable-nss], + AC_HELP_STRING([--disable-libnss], [Do not build against libnss3.]), enable_libnss=$enableval, enable_libnss="try") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/cpp/poppler-document.cpp new/poppler-0.49.0/cpp/poppler-document.cpp --- old/poppler-0.48.0/cpp/poppler-document.cpp 2016-07-24 12:26:51.000000000 +0200 +++ new/poppler-0.49.0/cpp/poppler-document.cpp 2016-10-23 19:08:37.000000000 +0200 @@ -1,6 +1,6 @@ /* * Copyright (C) 2009-2011, Pino Toscano <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/cpp/poppler-document.h new/poppler-0.49.0/cpp/poppler-document.h --- old/poppler-0.48.0/cpp/poppler-document.h 2016-07-24 12:26:51.000000000 +0200 +++ new/poppler-0.49.0/cpp/poppler-document.h 2016-10-23 19:08:37.000000000 +0200 @@ -1,6 +1,6 @@ /* * Copyright (C) 2009-2010, Pino Toscano <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/cpp/poppler-embedded-file.cpp new/poppler-0.49.0/cpp/poppler-embedded-file.cpp --- old/poppler-0.48.0/cpp/poppler-embedded-file.cpp 2016-06-09 20:09:35.000000000 +0200 +++ new/poppler-0.49.0/cpp/poppler-embedded-file.cpp 2016-10-23 19:08:37.000000000 +0200 @@ -1,6 +1,6 @@ /* * Copyright (C) 2009-2011, Pino Toscano <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/cpp/poppler-global.cpp new/poppler-0.49.0/cpp/poppler-global.cpp --- old/poppler-0.48.0/cpp/poppler-global.cpp 2016-06-09 20:09:35.000000000 +0200 +++ new/poppler-0.49.0/cpp/poppler-global.cpp 2016-10-23 19:08:37.000000000 +0200 @@ -3,7 +3,7 @@ * Copyright (C) 2010, Hib Eris <[email protected]> * Copyright (C) 2014, 2015 Hans-Peter Deifel <[email protected]> * Copyright (C) 2015, Tamas Szekeres <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/cpp/poppler-private.cpp new/poppler-0.49.0/cpp/poppler-private.cpp --- old/poppler-0.48.0/cpp/poppler-private.cpp 2016-07-12 23:01:58.000000000 +0200 +++ new/poppler-0.49.0/cpp/poppler-private.cpp 2016-10-23 19:08:37.000000000 +0200 @@ -2,7 +2,7 @@ * Copyright (C) 2009-2010, Pino Toscano <[email protected]> * Copyright (C) 2013 Adrian Johnson <[email protected]> * Copyright (C) 2014, Hans-Peter Deifel <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/cpp/poppler-private.h new/poppler-0.49.0/cpp/poppler-private.h --- old/poppler-0.48.0/cpp/poppler-private.h 2016-06-09 20:09:35.000000000 +0200 +++ new/poppler-0.49.0/cpp/poppler-private.h 2016-10-23 19:08:37.000000000 +0200 @@ -2,7 +2,7 @@ * Copyright (C) 2009, Pino Toscano <[email protected]> * Copyright (C) 2013 Adrian Johnson <[email protected]> * Copyright (C) 2014, Hans-Peter Deifel <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/cpp/poppler-version.h new/poppler-0.49.0/cpp/poppler-version.h --- old/poppler-0.48.0/cpp/poppler-version.h 2016-10-08 17:42:07.000000000 +0200 +++ new/poppler-0.49.0/cpp/poppler-version.h 2016-11-15 00:11:57.000000000 +0100 @@ -21,9 +21,9 @@ #include "poppler-global.h" -#define POPPLER_VERSION "0.48.0" +#define POPPLER_VERSION "0.49.0" #define POPPLER_VERSION_MAJOR 0 -#define POPPLER_VERSION_MINOR 48 +#define POPPLER_VERSION_MINOR 49 #define POPPLER_VERSION_MICRO 0 namespace poppler diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/glib/poppler-document.cc new/poppler-0.49.0/glib/poppler-document.cc --- old/poppler-0.48.0/glib/poppler-document.cc 2016-07-24 12:26:51.000000000 +0200 +++ new/poppler-0.49.0/glib/poppler-document.cc 2016-10-23 19:08:37.000000000 +0200 @@ -1,7 +1,7 @@ /* poppler-document.cc: glib wrapper for poppler * Copyright (C) 2005, Red Hat, Inc. * - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/glib/poppler-document.h new/poppler-0.49.0/glib/poppler-document.h --- old/poppler-0.48.0/glib/poppler-document.h 2016-07-05 23:37:01.000000000 +0200 +++ new/poppler-0.49.0/glib/poppler-document.h 2016-10-23 19:08:37.000000000 +0200 @@ -1,7 +1,7 @@ /* poppler-document.h: glib interface to poppler * Copyright (C) 2004, Red Hat, Inc. * - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/glib/reference/html/index.html new/poppler-0.49.0/glib/reference/html/index.html --- old/poppler-0.48.0/glib/reference/html/index.html 2016-10-08 18:11:41.000000000 +0200 +++ new/poppler-0.49.0/glib/reference/html/index.html 2016-11-15 00:25:24.000000000 +0100 @@ -15,7 +15,7 @@ <div> <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">Poppler Reference Manual</p></th></tr></table></div> <div><p class="releaseinfo"> - for Poppler 0.48.0 + for Poppler 0.49.0 </p></div> </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/glib/reference/html/poppler-Version-and-Features-Information.html new/poppler-0.49.0/glib/reference/html/poppler-Version-and-Features-Information.html --- old/poppler-0.48.0/glib/reference/html/poppler-Version-and-Features-Information.html 2016-10-08 18:11:41.000000000 +0200 +++ new/poppler-0.49.0/glib/reference/html/poppler-Version-and-Features-Information.html 2016-11-15 00:25:24.000000000 +0100 @@ -189,7 +189,7 @@ <hr> <div class="refsect2"> <a name="POPPLER-MINOR-VERSION:CAPS"></a><h3>POPPLER_MINOR_VERSION</h3> -<pre class="programlisting">#define POPPLER_MINOR_VERSION (48) +<pre class="programlisting">#define POPPLER_MINOR_VERSION (49) </pre> <p>The major version number of the poppler header files (e.g. in poppler version 0.1.2 this is 1.)</p> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/glib/reference/version.xml new/poppler-0.49.0/glib/reference/version.xml --- old/poppler-0.48.0/glib/reference/version.xml 2016-10-08 17:42:06.000000000 +0200 +++ new/poppler-0.49.0/glib/reference/version.xml 2016-11-15 00:11:56.000000000 +0100 @@ -1 +1 @@ -0.48.0 +0.49.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/goo/GooString.cc new/poppler-0.49.0/goo/GooString.cc --- old/poppler-0.48.0/goo/GooString.cc 2016-09-06 23:15:06.000000000 +0200 +++ new/poppler-0.49.0/goo/GooString.cc 2016-10-23 23:01:46.000000000 +0200 @@ -25,7 +25,7 @@ // Copyright (C) 2012 Pino Toscano <[email protected]> // Copyright (C) 2013 Jason Crain <[email protected]> // Copyright (C) 2015 William Bader <[email protected]> -// Copyright (C) 2016 Jakub Kucharski <[email protected]> +// Copyright (C) 2016 Jakub Alba <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git @@ -912,7 +912,7 @@ return strcmp(s + length - suffixLen, suffix) == 0; } -GBool GooString::hasUnicodeMarker(void) +GBool GooString::hasUnicodeMarker(void) const { return length > 1 && (s[0] & 0xff) == 0xfe && (s[1] & 0xff) == 0xff; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/goo/GooString.h new/poppler-0.49.0/goo/GooString.h --- old/poppler-0.48.0/goo/GooString.h 2016-09-06 23:14:07.000000000 +0200 +++ new/poppler-0.49.0/goo/GooString.h 2016-10-23 23:01:46.000000000 +0200 @@ -21,7 +21,7 @@ // Copyright (C) 2012-2014 Fabio D'Urso <[email protected]> // Copyright (C) 2013 Jason Crain <[email protected]> // Copyright (C) 2015 Adam Reichold <[email protected]> -// Copyright (C) 2016 Jakub Kucharski <[email protected]> +// Copyright (C) 2016 Jakub Alba <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git @@ -160,7 +160,8 @@ // Return true if string ends with suffix GBool endsWith(const char *suffix) const; - GBool hasUnicodeMarker(void); + GBool hasUnicodeMarker(void) const; + GBool hasJustUnicodeMarker(void) const { return length == 2 && hasUnicodeMarker(); } // Sanitizes the string so that it does // not contain any ( ) < > [ ] { } / % diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/Form.cc new/poppler-0.49.0/poppler/Form.cc --- old/poppler-0.48.0/poppler/Form.cc 2016-09-04 15:32:21.000000000 +0200 +++ new/poppler-0.49.0/poppler/Form.cc 2016-11-02 00:26:12.000000000 +0100 @@ -171,7 +171,6 @@ FormWidget(docA, aobj, num, ref, p) { type = formButton; - parent = static_cast<FormFieldButton*>(field); onStr = NULL; Object obj1, obj2; @@ -200,7 +199,7 @@ // 12.7.4.2.3 Check Boxes // Yes should be used as the name for the on state - return parent->getButtonType() == formButtonCheck ? (char *)"Yes" : NULL; + return parent()->getButtonType() == formButtonCheck ? (char *)"Yes" : NULL; } FormWidgetButton::~FormWidgetButton () @@ -210,7 +209,7 @@ FormButtonType FormWidgetButton::getButtonType () const { - return parent->getButtonType (); + return parent()->getButtonType (); } void FormWidgetButton::setAppearanceState(const char *state) { @@ -227,20 +226,25 @@ void FormWidgetButton::setState (GBool astate) { //pushButtons don't have state - if (parent->getButtonType() == formButtonPush) + if (parent()->getButtonType() == formButtonPush) return; // Silently return if can't set ON state if (astate && !onStr) return; - parent->setState(astate ? onStr->getCString() : (char *)"Off"); + parent()->setState(astate ? onStr->getCString() : (char *)"Off"); // Parent will call setAppearanceState() } GBool FormWidgetButton::getState () { - return onStr ? parent->getState(onStr->getCString()) : gFalse; + return onStr ? parent()->getState(onStr->getCString()) : gFalse; +} + +FormFieldButton *FormWidgetButton::parent() const +{ + return static_cast<FormFieldButton*>(field); } @@ -248,17 +252,16 @@ FormWidget(docA, aobj, num, ref, p) { type = formText; - parent = static_cast<FormFieldText*>(field); } GooString* FormWidgetText::getContent () { - return parent->getContent(); + return parent()->getContent(); } GooString* FormWidgetText::getContentCopy () { - return parent->getContentCopy(); + return parent()->getContentCopy(); } void FormWidgetText::updateWidgetAppearance() @@ -269,42 +272,42 @@ bool FormWidgetText::isMultiline () const { - return parent->isMultiline(); + return parent()->isMultiline(); } bool FormWidgetText::isPassword () const { - return parent->isPassword(); + return parent()->isPassword(); } bool FormWidgetText::isFileSelect () const { - return parent->isFileSelect(); + return parent()->isFileSelect(); } bool FormWidgetText::noSpellCheck () const { - return parent->noSpellCheck(); + return parent()->noSpellCheck(); } bool FormWidgetText::noScroll () const { - return parent->noScroll(); + return parent()->noScroll(); } bool FormWidgetText::isComb () const { - return parent->isComb(); + return parent()->isComb(); } bool FormWidgetText::isRichText () const { - return parent->isRichText(); + return parent()->isRichText(); } int FormWidgetText::getMaxLen () const { - return parent->getMaxLen (); + return parent()->getMaxLen (); } void FormWidgetText::setContent(GooString* new_content) @@ -314,14 +317,18 @@ return; } - parent->setContentCopy(new_content); + parent()->setContentCopy(new_content); +} + +FormFieldText *FormWidgetText::parent() const +{ + return static_cast<FormFieldText*>(field); } FormWidgetChoice::FormWidgetChoice(PDFDoc *docA, Object *aobj, unsigned num, Ref ref, FormField *p) : FormWidget(docA, aobj, num, ref, p) { type = formChoice; - parent = static_cast<FormFieldChoice*>(field); } FormWidgetChoice::~FormWidgetChoice() @@ -330,7 +337,7 @@ bool FormWidgetChoice::_checkRange (int i) { - if (i < 0 || i >= parent->getNumChoices()) { + if (i < 0 || i >= parent()->getNumChoices()) { error(errInternal, -1, "FormWidgetChoice::_checkRange i out of range : {0:d}", i); return false; } @@ -344,7 +351,7 @@ return; } if (!_checkRange(i)) return; - parent->select(i); + parent()->select(i); } void FormWidgetChoice::toggle (int i) @@ -354,7 +361,7 @@ return; } if (!_checkRange(i)) return; - parent->toggle(i); + parent()->toggle(i); } void FormWidgetChoice::deselectAll () @@ -363,7 +370,7 @@ error(errInternal, -1, "FormWidgetChoice::deselectAll called on a read only field\n"); return; } - parent->deselectAll(); + parent()->deselectAll(); } GooString* FormWidgetChoice::getEditChoice () @@ -372,7 +379,7 @@ error(errInternal, -1, "FormFieldChoice::getEditChoice called on a non-editable choice\n"); return NULL; } - return parent->getEditChoice(); + return parent()->getEditChoice(); } void FormWidgetChoice::updateWidgetAppearance() @@ -384,7 +391,7 @@ bool FormWidgetChoice::isSelected (int i) { if (!_checkRange(i)) return false; - return parent->isSelected(i); + return parent()->isSelected(i); } void FormWidgetChoice::setEditChoice (GooString* new_content) @@ -398,59 +405,63 @@ return; } - parent->setEditChoice(new_content); + parent()->setEditChoice(new_content); } int FormWidgetChoice::getNumChoices() { - return parent->getNumChoices(); + return parent()->getNumChoices(); } GooString* FormWidgetChoice::getChoice(int i) { - return parent->getChoice(i); + return parent()->getChoice(i); } bool FormWidgetChoice::isCombo () const { - return parent->isCombo(); + return parent()->isCombo(); } bool FormWidgetChoice::hasEdit () const { - return parent->hasEdit(); + return parent()->hasEdit(); } bool FormWidgetChoice::isMultiSelect () const { - return parent->isMultiSelect(); + return parent()->isMultiSelect(); } bool FormWidgetChoice::noSpellCheck () const { - return parent->noSpellCheck(); + return parent()->noSpellCheck(); } bool FormWidgetChoice::commitOnSelChange () const { - return parent->commitOnSelChange(); + return parent()->commitOnSelChange(); } bool FormWidgetChoice::isListBox () const { - return parent->isListBox(); + return parent()->isListBox(); +} + +FormFieldChoice *FormWidgetChoice::parent() const +{ + return static_cast<FormFieldChoice*>(field); } FormWidgetSignature::FormWidgetSignature(PDFDoc *docA, Object *aobj, unsigned num, Ref ref, FormField *p) : FormWidget(docA, aobj, num, ref, p) { type = formSignature; - parent = static_cast<FormFieldSignature*>(field); } SignatureInfo *FormWidgetSignature::validateSignature(bool doVerifyCert, bool forceRevalidation) { - return parent->validateSignature(doVerifyCert, forceRevalidation); + return static_cast<FormFieldSignature*>(field)->validateSignature(doVerifyCert, forceRevalidation); } void FormWidgetSignature::updateWidgetAppearance() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/Form.h new/poppler-0.49.0/poppler/Form.h --- old/poppler-0.48.0/poppler/Form.h 2016-09-06 23:31:43.000000000 +0200 +++ new/poppler-0.49.0/poppler/Form.h 2016-11-02 00:20:13.000000000 +0100 @@ -167,8 +167,8 @@ void updateWidgetAppearance(); protected: + FormFieldButton *parent() const; GooString *onStr; - FormFieldButton *parent; }; //------------------------------------------------------------------------ @@ -197,7 +197,7 @@ bool isRichText () const; int getMaxLen () const; protected: - FormFieldText *parent; + FormFieldText *parent() const; }; //------------------------------------------------------------------------ @@ -238,7 +238,7 @@ bool isListBox () const; protected: bool _checkRange (int i); - FormFieldChoice *parent; + FormFieldChoice *parent() const; }; //------------------------------------------------------------------------ @@ -251,9 +251,6 @@ void updateWidgetAppearance(); SignatureInfo *validateSignature(bool doVerifyCert, bool forceRevalidation); - -protected: - FormFieldSignature *parent; }; //------------------------------------------------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/Gfx.cc new/poppler-0.49.0/poppler/Gfx.cc --- old/poppler-0.48.0/poppler/Gfx.cc 2016-05-31 18:40:39.000000000 +0200 +++ new/poppler-0.49.0/poppler/Gfx.cc 2016-11-10 00:31:52.000000000 +0100 @@ -2348,6 +2348,7 @@ det = ctm[0] * ctm[3] - ctm[1] * ctm[2]; if (fabs(det) < 0.000001) { error(errSyntaxError, getPos(), "Singular matrix in shading pattern fill"); + restoreStateStack(savedState); return; } det = 1 / det; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/Makefile.am new/poppler-0.49.0/poppler/Makefile.am --- old/poppler-0.48.0/poppler/Makefile.am 2016-10-08 17:37:01.000000000 +0200 +++ new/poppler-0.49.0/poppler/Makefile.am 2016-11-15 00:10:33.000000000 +0100 @@ -327,7 +327,7 @@ $(win32_libs) libpoppler_la_LDFLAGS = \ - -version-info 64:0:0 \ + -version-info 65:0:0 \ @create_shared_lib@ \ @auto_import_flags@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/Makefile.in new/poppler-0.49.0/poppler/Makefile.in --- old/poppler-0.48.0/poppler/Makefile.in 2016-10-08 17:41:52.000000000 +0200 +++ new/poppler-0.49.0/poppler/Makefile.in 2016-11-15 00:11:47.000000000 +0100 @@ -839,7 +839,7 @@ $(win32_libs) libpoppler_la_LDFLAGS = \ - -version-info 64:0:0 \ + -version-info 65:0:0 \ @create_shared_lib@ \ @auto_import_flags@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/Object.h new/poppler-0.49.0/poppler/Object.h --- old/poppler-0.48.0/poppler/Object.h 2016-07-05 23:37:01.000000000 +0200 +++ new/poppler-0.49.0/poppler/Object.h 2016-10-23 19:08:37.000000000 +0200 @@ -21,7 +21,7 @@ // Copyright (C) 2013 Thomas Freitag <[email protected]> // Copyright (C) 2013 Adrian Johnson <[email protected]> // Copyright (C) 2013 Adrian Perez de Castro <[email protected]> -// Copyright (C) 2016 Jakub Kucharski <[email protected]> +// Copyright (C) 2016 Jakub Alba <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/PDFDoc.cc new/poppler-0.49.0/poppler/PDFDoc.cc --- old/poppler-0.48.0/poppler/PDFDoc.cc 2016-09-07 16:47:08.000000000 +0200 +++ new/poppler-0.49.0/poppler/PDFDoc.cc 2016-10-23 23:02:16.000000000 +0200 @@ -34,7 +34,7 @@ // Copyright (C) 2015 Li Junling <[email protected]> // Copyright (C) 2015 André Guerreiro <[email protected]> // Copyright (C) 2015 André Esser <[email protected]> -// Copyright (C) 2016 Jakub Kucharski <[email protected]> +// Copyright (C) 2016 Jakub Alba <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git @@ -615,7 +615,7 @@ void PDFDoc::setDocInfoStringEntry(const char *key, GooString *value) { - GBool removeEntry = !value || value->getLength() == 0; + GBool removeEntry = !value || value->getLength() == 0 || value->hasJustUnicodeMarker(); if (removeEntry) { delete value; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/PDFDoc.h new/poppler-0.49.0/poppler/PDFDoc.h --- old/poppler-0.48.0/poppler/PDFDoc.h 2016-07-05 23:37:01.000000000 +0200 +++ new/poppler-0.49.0/poppler/PDFDoc.h 2016-10-23 19:08:37.000000000 +0200 @@ -29,7 +29,7 @@ // Copyright (C) 2013 Adrian Perez de Castro <[email protected]> // Copyright (C) 2015 André Guerreiro <[email protected]> // Copyright (C) 2015 André Esser <[email protected]> -// Copyright (C) 2016 Jakub Kucharski <[email protected]> +// Copyright (C) 2016 Jakub Alba <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/PSOutputDev.cc new/poppler-0.49.0/poppler/PSOutputDev.cc --- old/poppler-0.48.0/poppler/PSOutputDev.cc 2016-09-04 15:32:21.000000000 +0200 +++ new/poppler-0.49.0/poppler/PSOutputDev.cc 2016-11-15 00:02:03.000000000 +0100 @@ -30,6 +30,7 @@ // Copyright (C) 2012 Lu Wang <[email protected]> // Copyright (C) 2014 Till Kamppeter <[email protected]> // Copyright (C) 2015 Marek Kasik <[email protected]> +// Copyright (C) 2016 Caolán McNamara <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git @@ -48,6 +49,7 @@ #include <signal.h> #include <math.h> #include <limits.h> +#include <algorithm> #include "goo/GooString.h" #include "goo/GooList.h" #include "goo/GooHash.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/SplashOutputDev.cc new/poppler-0.49.0/poppler/SplashOutputDev.cc --- old/poppler-0.48.0/poppler/SplashOutputDev.cc 2016-09-04 15:19:58.000000000 +0200 +++ new/poppler-0.49.0/poppler/SplashOutputDev.cc 2016-11-02 22:59:53.000000000 +0100 @@ -1323,6 +1323,10 @@ struct T3GlyphStack { Gushort code; // character code + GBool haveDx; // set after seeing a d0/d1 operator + GBool doNotCache; // set if we see a gsave/grestore before + // the d0/d1 + //----- cache info T3FontCache *cache; // font cache for the current font T3FontCacheTag *cacheTag; // pointer to cache tag for the glyph @@ -1600,11 +1604,21 @@ void SplashOutputDev::saveState(GfxState *state) { splash->saveState(); + if (t3GlyphStack && !t3GlyphStack->haveDx) { + t3GlyphStack->doNotCache = gTrue; + error(errSyntaxWarning, -1, + "Save (q) operator before d0/d1 in Type 3 glyph"); + } } void SplashOutputDev::restoreState(GfxState *state) { splash->restoreState(); needFontUpdate = gTrue; + if (t3GlyphStack && !t3GlyphStack->haveDx) { + t3GlyphStack->doNotCache = gTrue; + error(errSyntaxWarning, -1, + "Restore (Q) operator before d0/d1 in Type 3 glyph"); + } } void SplashOutputDev::updateAll(GfxState *state) { @@ -2668,8 +2682,8 @@ t3GlyphStack->cache = t3Font; t3GlyphStack->cacheTag = NULL; t3GlyphStack->cacheData = NULL; - - haveT3Dx = gFalse; + t3GlyphStack->haveDx = gFalse; + t3GlyphStack->doNotCache = gFalse; return gFalse; } @@ -2699,7 +2713,7 @@ } void SplashOutputDev::type3D0(GfxState *state, double wx, double wy) { - haveT3Dx = gTrue; + t3GlyphStack->haveDx = gTrue; } void SplashOutputDev::type3D1(GfxState *state, double wx, double wy, @@ -2711,10 +2725,14 @@ int i, j; // ignore multiple d0/d1 operators - if (haveT3Dx) { + if (t3GlyphStack->haveDx) { + return; + } + t3GlyphStack->haveDx = gTrue; + // don't cache if we got a gsave/grestore before the d1 + if (t3GlyphStack->doNotCache) { return; } - haveT3Dx = gTrue; if (unlikely(t3GlyphStack == NULL)) { error(errSyntaxWarning, -1, "t3GlyphStack was null in SplashOutputDev::type3D1"); @@ -4762,17 +4780,17 @@ default: break; } - SplashGouraudColor *splashShading = new SplashGouraudPattern(bDirectColorTranslation, state, shading, colorMode); // restore vector antialias because we support it here if (shading->isParameterized()) { + SplashGouraudColor *splashShading = new SplashGouraudPattern(bDirectColorTranslation, state, shading, colorMode); GBool vaa = getVectorAntialias(); GBool retVal = gFalse; setVectorAntialias(gTrue); retVal = splash->gouraudTriangleShadedFill(splashShading); setVectorAntialias(vaa); + delete splashShading; return retVal; } - delete splashShading; return gFalse; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/SplashOutputDev.h new/poppler-0.49.0/poppler/SplashOutputDev.h --- old/poppler-0.48.0/poppler/SplashOutputDev.h 2016-05-02 00:08:03.000000000 +0200 +++ new/poppler-0.49.0/poppler/SplashOutputDev.h 2016-11-02 22:59:53.000000000 +0100 @@ -459,7 +459,6 @@ t3FontCache[splashOutT3FontCacheSize]; int nT3Fonts; // number of valid entries in t3FontCache T3GlyphStack *t3GlyphStack; // Type 3 glyph context stack - GBool haveT3Dx; // set after seeing a d0/d1 operator SplashFont *font; // current font GBool needFontUpdate; // set when the font needs to be updated diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/XRef.cc new/poppler-0.49.0/poppler/XRef.cc --- old/poppler-0.48.0/poppler/XRef.cc 2016-09-06 00:02:05.000000000 +0200 +++ new/poppler-0.49.0/poppler/XRef.cc 2016-10-23 19:08:37.000000000 +0200 @@ -24,7 +24,7 @@ // Copyright (C) 2012, 2013 Fabio D'Urso <[email protected]> // Copyright (C) 2013, 2014 Adrian Johnson <[email protected]> // Copyright (C) 2013 Pino Toscano <[email protected]> -// Copyright (C) 2016 Jakub Kucharski <[email protected]> +// Copyright (C) 2016 Jakub Alba <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/XRef.h new/poppler-0.49.0/poppler/XRef.h --- old/poppler-0.48.0/poppler/XRef.h 2016-07-05 23:37:01.000000000 +0200 +++ new/poppler-0.49.0/poppler/XRef.h 2016-10-23 19:08:37.000000000 +0200 @@ -22,7 +22,7 @@ // Copyright (C) 2012, 2013, 2016 Thomas Freitag <[email protected]> // Copyright (C) 2012, 2013 Fabio D'Urso <[email protected]> // Copyright (C) 2013 Adrian Johnson <[email protected]> -// Copyright (C) 2016 Jakub Kucharski <[email protected]> +// Copyright (C) 2016 Jakub Alba <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/poppler-config.h.cmake new/poppler-0.49.0/poppler/poppler-config.h.cmake --- old/poppler-0.48.0/poppler/poppler-config.h.cmake 2016-05-02 00:08:03.000000000 +0200 +++ new/poppler-0.49.0/poppler/poppler-config.h.cmake 2016-11-15 00:06:05.000000000 +0100 @@ -15,6 +15,7 @@ // // Copyright (C) 2014 Bogdan Cristea <[email protected]> // Copyright (C) 2014 Hib Eris <[email protected]> +// Copyright (C) 2016 Tor Lillqvist <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git @@ -186,7 +187,7 @@ #define GCC_PRINTF_FORMAT(fmt_index, va_index) #endif -#if defined(_MSC_VER) +#if defined(_MSC_VER) && _MSC_VER < 1800 #define fmax(a, b) std::max(a, b) #define fmin(a, b) std::min(a, b) #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/poppler/poppler-config.h.in new/poppler-0.49.0/poppler/poppler-config.h.in --- old/poppler-0.48.0/poppler/poppler-config.h.in 2016-05-02 00:08:04.000000000 +0200 +++ new/poppler-0.49.0/poppler/poppler-config.h.in 2016-11-15 00:01:38.000000000 +0100 @@ -15,6 +15,7 @@ // // Copyright (C) 2014 Bogdan Cristea <[email protected]> // Copyright (C) 2014 Hib Eris <[email protected]> +// Copyright (C) 2016 Tor Lillqvist <[email protected]> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git @@ -186,7 +187,7 @@ #define GCC_PRINTF_FORMAT(fmt_index, va_index) #endif -#if defined(_MSC_VER) +#if defined(_MSC_VER) && _MSC_VER < 1800 #define fmax(a, b) std::max(a, b) #define fmin(a, b) std::min(a, b) #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt4/src/poppler-document.cc new/poppler-0.49.0/qt4/src/poppler-document.cc --- old/poppler-0.48.0/qt4/src/poppler-document.cc 2016-07-24 23:06:49.000000000 +0200 +++ new/poppler-0.49.0/qt4/src/poppler-document.cc 2016-10-23 19:08:37.000000000 +0200 @@ -9,7 +9,7 @@ * Copyright (C) 2012 Fabio D'Urso <[email protected]> * Copyright (C) 2014 Adam Reichold <[email protected]> * Copyright (C) 2015 William Bader <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt4/src/poppler-private.cc new/poppler-0.49.0/qt4/src/poppler-private.cc --- old/poppler-0.48.0/qt4/src/poppler-private.cc 2016-07-24 12:27:50.000000000 +0200 +++ new/poppler-0.49.0/qt4/src/poppler-private.cc 2016-10-23 19:08:37.000000000 +0200 @@ -4,7 +4,7 @@ * Copyright (C) 2008, 2010, 2011 by Pino Toscano <[email protected]> * Copyright (C) 2013 by Thomas Freitag <[email protected]> * Copyright (C) 2013 Adrian Johnson <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * Inspired on code by * Copyright (C) 2004 by Albert Astals Cid <[email protected]> * Copyright (C) 2004 by Enrico Ros <[email protected]> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt4/src/poppler-private.h new/poppler-0.49.0/qt4/src/poppler-private.h --- old/poppler-0.48.0/qt4/src/poppler-private.h 2016-07-24 12:27:50.000000000 +0200 +++ new/poppler-0.49.0/qt4/src/poppler-private.h 2016-10-23 19:08:37.000000000 +0200 @@ -7,7 +7,7 @@ * Copyright (C) 2011 Hib Eris <[email protected]> * Copyright (C) 2012, 2013 Thomas Freitag <[email protected]> * Copyright (C) 2013 Julien Nabet <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * Inspired on code by * Copyright (C) 2004 by Albert Astals Cid <[email protected]> * Copyright (C) 2004 by Enrico Ros <[email protected]> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt4/src/poppler-qt4.h new/poppler-0.49.0/qt4/src/poppler-qt4.h --- old/poppler-0.48.0/qt4/src/poppler-qt4.h 2016-07-24 12:29:33.000000000 +0200 +++ new/poppler-0.49.0/qt4/src/poppler-qt4.h 2016-10-23 19:08:37.000000000 +0200 @@ -14,7 +14,7 @@ * Copyright (C) 2012, Tobias Koenig <[email protected]> * Copyright (C) 2012, 2014, 2015 Adam Reichold <[email protected]> * Copyright (C) 2012, 2013 Thomas Freitag <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt5/src/poppler-document.cc new/poppler-0.49.0/qt5/src/poppler-document.cc --- old/poppler-0.48.0/qt5/src/poppler-document.cc 2016-07-24 23:07:22.000000000 +0200 +++ new/poppler-0.49.0/qt5/src/poppler-document.cc 2016-10-23 19:08:37.000000000 +0200 @@ -9,7 +9,7 @@ * Copyright (C) 2012 Fabio D'Urso <[email protected]> * Copyright (C) 2014 Adam Reichold <[email protected]> * Copyright (C) 2015 William Bader <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt5/src/poppler-private.cc new/poppler-0.49.0/qt5/src/poppler-private.cc --- old/poppler-0.48.0/qt5/src/poppler-private.cc 2016-07-24 12:40:56.000000000 +0200 +++ new/poppler-0.49.0/qt5/src/poppler-private.cc 2016-10-23 19:08:37.000000000 +0200 @@ -4,7 +4,7 @@ * Copyright (C) 2008, 2010, 2011, 2014 by Pino Toscano <[email protected]> * Copyright (C) 2013 by Thomas Freitag <[email protected]> * Copyright (C) 2013 Adrian Johnson <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * Inspired on code by * Copyright (C) 2004 by Albert Astals Cid <[email protected]> * Copyright (C) 2004 by Enrico Ros <[email protected]> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt5/src/poppler-private.h new/poppler-0.49.0/qt5/src/poppler-private.h --- old/poppler-0.48.0/qt5/src/poppler-private.h 2016-07-24 12:40:56.000000000 +0200 +++ new/poppler-0.49.0/qt5/src/poppler-private.h 2016-10-23 19:08:37.000000000 +0200 @@ -9,7 +9,7 @@ * Copyright (C) 2013 Anthony Granger <[email protected]> * Copyright (C) 2014 Bogdan Cristea <[email protected]> * Copyright (C) 2014 Aki Koskinen <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * Inspired on code by * Copyright (C) 2004 by Albert Astals Cid <[email protected]> * Copyright (C) 2004 by Enrico Ros <[email protected]> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/qt5/src/poppler-qt5.h new/poppler-0.49.0/qt5/src/poppler-qt5.h --- old/poppler-0.48.0/qt5/src/poppler-qt5.h 2016-07-24 12:41:37.000000000 +0200 +++ new/poppler-0.49.0/qt5/src/poppler-qt5.h 2016-10-23 19:08:37.000000000 +0200 @@ -15,7 +15,7 @@ * Copyright (C) 2012, 2014, 2015 Adam Reichold <[email protected]> * Copyright (C) 2012, 2013 Thomas Freitag <[email protected]> * Copyright (C) 2013 Anthony Granger <[email protected]> - * Copyright (C) 2016 Jakub Kucharski <[email protected]> + * Copyright (C) 2016 Jakub Alba <[email protected]> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/splash/Splash.cc new/poppler-0.49.0/splash/Splash.cc --- old/poppler-0.48.0/splash/Splash.cc 2016-09-04 15:32:21.000000000 +0200 +++ new/poppler-0.49.0/splash/Splash.cc 2016-10-24 20:00:44.000000000 +0200 @@ -5745,24 +5745,26 @@ colorinterp = scanColorMap[0] * scanLimitL + scanColorMap[1]; bitmapOff = scanLineOff + scanLimitL * colorComps; - for (int X = scanLimitL; X <= scanLimitR && bitmapOff + colorComps <= bitmapOffLimit; ++X, colorinterp += scanColorMap[0], bitmapOff += colorComps) { - // FIXME : standard rectangular clipping can be done for a - // complete scanline which is faster - // --> see SplashClip and its methods - if (!clip->test(X, Y)) - continue; + if (likely(bitmapOff >= 0)) { + for (int X = scanLimitL; X <= scanLimitR && bitmapOff + colorComps <= bitmapOffLimit; ++X, colorinterp += scanColorMap[0], bitmapOff += colorComps) { + // FIXME : standard rectangular clipping can be done for a + // complete scanline which is faster + // --> see SplashClip and its methods + if (!clip->test(X, Y)) + continue; - assert(fabs(colorinterp - (scanColorMap[0] * X + scanColorMap[1])) < 1e-10); - assert(bitmapOff == Y * rowSize + colorComps * X && scanLineOff == Y * rowSize); + assert(fabs(colorinterp - (scanColorMap[0] * X + scanColorMap[1])) < 1e-10); + assert(bitmapOff == Y * rowSize + colorComps * X && scanLineOff == Y * rowSize); - shading->getParameterizedColor(colorinterp, bitmapMode, &bitmapData[bitmapOff]); + shading->getParameterizedColor(colorinterp, bitmapMode, &bitmapData[bitmapOff]); - // make the shading visible. - // Note that opacity is handled by the bDirectBlit stuff, see - // above for comments and below for implementation. - if (hasAlpha) - bitmapAlpha[Y * bitmapWidth + X] = 255; - } + // make the shading visible. + // Note that opacity is handled by the bDirectBlit stuff, see + // above for comments and below for implementation. + if (hasAlpha) + bitmapAlpha[Y * bitmapWidth + X] = 255; + } + } } } } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.48.0/utils/pdfseparate.cc new/poppler-0.49.0/utils/pdfseparate.cc --- old/poppler-0.48.0/utils/pdfseparate.cc 2016-05-02 00:08:04.000000000 +0200 +++ new/poppler-0.49.0/utils/pdfseparate.cc 2016-11-14 23:59:24.000000000 +0100 @@ -6,7 +6,7 @@ // // Copyright (C) 2011, 2012, 2015 Thomas Freitag <[email protected]> // Copyright (C) 2012-2014 Albert Astals Cid <[email protected]> -// Copyright (C) 2013 Pino Toscano <[email protected]> +// Copyright (C) 2013, 2016 Pino Toscano <[email protected]> // Copyright (C) 2013 Daniel Kahn Gillmor <[email protected]> // Copyright (C) 2013 Suzuki Toshiya <[email protected]> // @@ -97,7 +97,7 @@ } } if (!foundmatch && firstPage != lastPage) { - error(errSyntaxError, -1, "'{0:s}' must contain '%%d' if more than one page should be extracted", destFileName); + error(errSyntaxError, -1, "'{0:s}' must contain '%d' if more than one page should be extracted", destFileName); free(auxDestFileName); delete doc; return false;
