Hello community, here is the log from the commit of package poppler for openSUSE:Factory checked in at 2016-01-23 01:14:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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 2015-12-20 10:51:16.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.poppler.new/poppler-qt.changes 2016-01-23 01:14:42.000000000 +0100 @@ -1,0 +2,20 @@ +Fri Jan 15 11:39:40 UTC 2016 - [email protected] + +- Update to version 0.40.0: + + core: + - CairoOutputDev: Use shape mask with soft mask (fdo#91931). + - TextOutputDev: + . Handle right-to-left text in search + . Fix finding Arabic Presentation Forms ligatures. + - Fix crash in invalid file (fdo#93476). + - Regression test improvements. + + utils: + - pdftocairo: + . Fix writing to stdout out with image output. + . Document that -singlefile appends file type (fdo#86254). + . Ensure surface flushed before accessing image data. + . Check for invalid use of options (fdo#92195). + - pdfunite: Fix typo in manual. + + build system: Improve cmake build system. + +------------------------------------------------------------------- poppler-qt5.changes: same change poppler.changes: same change Old: ---- poppler-0.39.0.tar.xz New: ---- poppler-0.40.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ poppler-qt.spec ++++++ --- /var/tmp/diff_new_pack.kqFdIN/_old 2016-01-23 01:14:43.000000000 +0100 +++ /var/tmp/diff_new_pack.kqFdIN/_new 2016-01-23 01:14:43.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package poppler-qt # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,7 +21,7 @@ Name: poppler-qt %define _name poppler -Version: 0.39.0 +Version: 0.40.0 Release: 0 # Actual version of poppler-data: %define poppler_data_version 0.4.6 poppler-qt5.spec: same change ++++++ poppler.spec ++++++ --- /var/tmp/diff_new_pack.kqFdIN/_old 2016-01-23 01:14:43.000000000 +0100 +++ /var/tmp/diff_new_pack.kqFdIN/_new 2016-01-23 01:14:43.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package poppler # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,7 +21,7 @@ Name: poppler %define _name poppler -Version: 0.39.0 +Version: 0.40.0 Release: 0 # Actual version of poppler-data: %define poppler_data_version 0.4.6 ++++++ poppler-0.39.0.tar.xz -> poppler-0.40.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/CMakeLists.txt new/poppler-0.40.0/CMakeLists.txt --- old/poppler-0.39.0/CMakeLists.txt 2015-12-17 00:07:49.000000000 +0100 +++ new/poppler-0.40.0/CMakeLists.txt 2016-01-13 23:18:14.000000000 +0100 @@ -22,7 +22,7 @@ endif() set(POPPLER_MAJOR_VERSION "0") -set(POPPLER_MINOR_VERSION "39") +set(POPPLER_MINOR_VERSION "40") set(POPPLER_MICRO_VERSION "0") set(POPPLER_VERSION "${POPPLER_MAJOR_VERSION}.${POPPLER_MINOR_VERSION}.${POPPLER_MICRO_VERSION}") @@ -442,7 +442,6 @@ poppler/JPEG2000Stream.cc ) add_definitions(-DUSE_OPENJPEG2) -MESSAGE(${LIBOPENJPEG2_LIBRARIES}) set(poppler_LIBS ${poppler_LIBS} ${LIBOPENJPEG2_LIBRARIES}) else () set(poppler_SRCS ${poppler_SRCS} @@ -479,8 +478,7 @@ add_library(poppler SHARED ${poppler_SRCS}) endif(MSVC) set_target_properties(poppler PROPERTIES VERSION 58.0.0 SOVERSION 58) -target_link_libraries(poppler ${poppler_LIBS}) -target_link_libraries(poppler LINK_INTERFACE_LIBRARIES "") +target_link_libraries(poppler LINK_PRIVATE ${poppler_LIBS}) install(TARGETS poppler RUNTIME DESTINATION bin LIBRARY DESTINATION lib${LIB_SUFFIX} ARCHIVE DESTINATION lib${LIB_SUFFIX}) if(ENABLE_XPDF_HEADERS) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/ChangeLog new/poppler-0.40.0/ChangeLog --- old/poppler-0.39.0/ChangeLog 2015-12-17 00:19:26.000000000 +0100 +++ new/poppler-0.40.0/ChangeLog 2016-01-13 23:33:57.000000000 +0100 @@ -1,3 +1,248 @@ +commit 449d45fab8e61393d858549460e61599e4dbd7eb +Author: Albert Astals Cid <[email protected]> +Date: Wed Jan 13 23:19:12 2016 +0100 + + 0.40.0 + NEWS + + CMakeLists.txt | 2 +- + NEWS | 18 ++++++++++++++++++ + configure.ac | 2 +- + cpp/Doxyfile | 2 +- + qt4/src/Doxyfile | 2 +- + qt5/src/Doxyfile | 2 +- + 6 files changed, 23 insertions(+), 5 deletions(-) + +commit e9740b57324cf5a09f6f4312165da13c7b3a576b +Author: Albert Astals Cid <[email protected]> +Date: Wed Jan 13 23:14:35 2016 +0100 + + Update copyrights + + poppler/Function.cc | 2 +- + utils/pdftocairo.cc | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit 3bfc45bfcca1a52447cedbb95afad1ef362ac6f0 +Author: Adrian Johnson <[email protected]> +Date: Mon Jan 11 21:46:49 2016 +1030 + + pdftocairo: check for invalid use of -scale-to* and -paper[wh] options + + Bug 92195 + + utils/pdftocairo.cc | 12 +++++++++++- + 1 file changed, 11 insertions(+), 1 deletion(-) + +commit 819bea740b1fadb24833e0ecbdf4e75ddca8eb14 +Author: Adrian Johnson <[email protected]> +Date: Mon Jan 11 19:44:14 2016 +1030 + + pdftocairo: ensure surface flushed before accessing image data + + utils/pdftocairo.cc | 1 + + 1 file changed, 1 insertion(+) + +commit f7542348b37cc881d854bbc36c3af0a4fe37d839 +Author: Adrian Johnson <[email protected]> +Date: Mon Jan 11 19:39:34 2016 +1030 + + pdftocairo: document that -singlefile appends file type + + Bug 86254 + + utils/pdftocairo.1 | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +commit 9fa58b1ef6c97e2a30bb3197c11000fac3b059f4 +Author: Adrian Johnson <[email protected]> +Date: Mon Jan 11 19:26:02 2016 +1030 + + pdftocairo: fix writing to stdout out with image output + + utils/pdftocairo.cc | 14 ++++++++------ + 1 file changed, 8 insertions(+), 6 deletions(-) + +commit 01d4bb222d63eda7dc5ec903c0735179edf77c0e +Author: Albert Astals Cid <[email protected]> +Date: Sun Jan 3 13:01:31 2016 +0100 + + Happy New Year + + poppler/poppler-config.h.cmake | 2 +- + poppler/poppler-config.h.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit d8f418d2f2ec5966d77caf128a52c834fdd0efcf +Author: Khaled Hosny <[email protected]> +Date: Mon Nov 23 13:52:10 2015 +0400 + + Fix finding Arabic Presentation Forms ligatures + + PDF text containing Arabic Presentation forms ligatures is still not + found after the previous commit. + + This because the ligatures are decomposed in logical order after + normalisation, while the whole string is in visual order. For example + the RTL text ABCD in visual order will be DCBA, and assuming B is a + ligature, it will be decomposed to B1B2 so the string after + normalization will be DCB1B2A while we are expecting it to be DCB2B1A. + + This patch reverses the order of the decomposition of RTL characters + to + work around this issue. + + poppler/TextOutputDev.cc | 4 +++- + poppler/UnicodeTypeTable.cc | 20 ++++++++++++++++---- + poppler/UnicodeTypeTable.h | 7 ++++++- + 3 files changed, 25 insertions(+), 6 deletions(-) + +commit 67645087477beb618304ea34cbdbafd40b199276 +Author: Khaled Hosny <[email protected]> +Date: Wed Nov 18 14:47:28 2015 +0400 + + Handle right-to-left text in search + + Currently right-to-left text reversal is only done during text + dumping, + but not during search. This commit applies the same reversal logic + during PDF search as well. + + poppler/TextOutputDev.cc | 191 + ++++++++++++++++++++++++++--------------------- + 1 file changed, 107 insertions(+), 84 deletions(-) + +commit 00422d0c6baaba639fa0660e3a933cdb76b28f88 +Author: Jason Crain <[email protected]> +Date: Sun Dec 20 09:54:43 2015 -0600 + + cairo: use shape mask with soft mask + + Clear target with the shape mask whether the soft mask is set or not. + Propagate the shape up to any higher level groups and destroy the + shape pattern when done. + + Fix a memory leak by removing a call to 'cairo_reference + (cairo_shape)'. + We already keep track of the lifetime of cairo_shape using + knockoutCount. + + bug 91931 + + poppler/CairoOutputDev.cc | 49 + ++++++++++++++++++++++------------------------- + 1 file changed, 23 insertions(+), 26 deletions(-) + +commit bc4cab272e4fe28b836cb2ef1ff672f0d79d243c +Author: Carlos Garcia Campos <[email protected]> +Date: Sat Jan 2 09:49:27 2016 +0100 + + regtest: Fix the number of worker threads spawned reported in log + of run-tests command + + regtest/TestRun.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit ea75de614e666d8235c38048585315e0d7ff5522 +Author: Adam Reichold <[email protected]> +Date: Sat Jan 2 09:48:03 2016 +0100 + + regtest: Limit the number of worker threads to the number of documents + to create references + + The same way we do for the run-tests command. + + regtest/TestReferences.py | 27 ++++++++++++++++++--------- + 1 file changed, 18 insertions(+), 9 deletions(-) + +commit 25bb59a81de8a1b6dd23fec871a97ccb11fe9d64 +Author: Carlos Garcia Campos <[email protected]> +Date: Fri Jan 1 12:45:42 2016 +0100 + + regtest: Allow to interrupt run-tests and create-refs commands when + multiple threads are used + + The Queue join implementation uses a non-timed wait that blocks + the main + thread, making it impossible to interrupt it with CTRL+C or sending + SIGINT signal. Using any timeout value for wait would fix the problem, + but Queue doesn't allow to pass a timeout to the join method. The + Queue implementation is actually quite simple, so we can just add our + own implementation with only the things we really need and use + a timeout + value when calling wait() in join(). + + regtest/InterruptibleQueue.py | 68 + +++++++++++++++++++++++++++++++++++++++++++ + regtest/TestReferences.py | 4 +-- + regtest/TestRun.py | 4 +-- + 3 files changed, 72 insertions(+), 4 deletions(-) + +commit ffb3ff633b124c476ab48bbcfce04d7f418df9bc +Author: Adam Reichold <[email protected]> +Date: Fri Jan 1 11:32:14 2016 +0100 + + regtest: Do not use the log printer with the TestReferences lock held + + regtest/TestReferences.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit e3b09727ad96a03ba1250f49486948899b4df793 +Author: Adam Reichold <[email protected]> +Date: Fri Dec 25 14:10:03 2015 +0100 + + Make detection of version one of OpenJPEG prefer a pkg-config manifest + if it exists. + + CMakeLists.txt | 1 - + cmake/modules/FindLIBOPENJPEG.cmake | 37 + +++++++++++++++++++++++-------------- + 2 files changed, 23 insertions(+), 15 deletions(-) + +commit 7c880daecfcddac2f8181d5f3d506dd409812dbe +Author: Adam Reichold <[email protected]> +Date: Fri Dec 25 14:10:03 2015 +0100 + + Make use of LINK_PRIVATE flag to fix warning on CMake policy 0022. + + CMakeLists.txt | 3 +-- + cpp/CMakeLists.txt | 3 +-- + 2 files changed, 2 insertions(+), 4 deletions(-) + +commit 4a413b9b95d5c6815c91adb815254cce97dd5b4b +Author: Adam Reichold <[email protected]> +Date: Fri Dec 25 14:10:03 2015 +0100 + + Make target names for Qt4 and Qt5 builds unique so they can be built + at the same time using recent CMake and Ninja versions. + + qt4/tests/CMakeLists.txt | 44 +++++++++++++++++++++--------------------- + qt5/CMakeLists.txt | 2 ++ + qt5/demos/CMakeLists.txt | 2 -- + qt5/src/CMakeLists.txt | 2 -- + qt5/tests/CMakeLists.txt | 50 + +++++++++++++++++++++++------------------------- + 5 files changed, 48 insertions(+), 52 deletions(-) + +commit b3425dd3261679958cd56c0f71995c15d2124433 +Author: Albert Astals Cid <[email protected]> +Date: Tue Dec 22 22:50:33 2015 +0100 + + Do not crash on invalid files + + Bug #93476 + + poppler/Function.cc | 4 ++++ + 1 file changed, 4 insertions(+) + +commit 5d57c34cbf9288eec6ddb149e905268405c19450 +Author: Pino Toscano <[email protected]> +Date: Sun Dec 20 08:42:25 2015 +0100 + + typo fix: "occurence" -> "occurrence" + + utils/pdfunite.1 | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + commit 3eee5274abb24d5b5be05262aafe794652cdac35 Author: Albert Astals Cid <[email protected]> Date: Thu Dec 17 00:09:37 2015 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/NEWS new/poppler-0.40.0/NEWS --- old/poppler-0.39.0/NEWS 2015-12-17 00:05:13.000000000 +0100 +++ new/poppler-0.40.0/NEWS 2016-01-13 23:17:55.000000000 +0100 @@ -1,3 +1,21 @@ +Release 0.40.0 + core: + * CairoOutputDev: Use shape mask with soft mask. Bug #91931 + * TextOutputDev: Handle right-to-left text in search + * TextOutputDev: Fix finding Arabic Presentation Forms ligatures + * Fix crash in invalid file. Bug #93476 + * Regression test improvements + + utils: + * pdftocairo: fix writing to stdout out with image output + * pdftocairo: document that -singlefile appends file type. Bug #86254 + * pdftocairo: ensure surface flushed before accessing image data + * pdftocairo: check for invalid use of options. Bug #92195 + * pdfunite: Fix typo in manual + + build system: + * Improve cmake build system + Release 0.39.0 core: * Ignore the alternateSpace and tintTransform. Bug #92381 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/cmake/modules/FindLIBOPENJPEG.cmake new/poppler-0.40.0/cmake/modules/FindLIBOPENJPEG.cmake --- old/poppler-0.39.0/cmake/modules/FindLIBOPENJPEG.cmake 2015-01-04 20:21:42.000000000 +0100 +++ new/poppler-0.40.0/cmake/modules/FindLIBOPENJPEG.cmake 2016-01-13 23:13:59.000000000 +0100 @@ -23,31 +23,40 @@ set(LIBOPENJPEG_LIBRARIES) set(LIBOPENJPEG_INCLUDE_DIR) - find_path (LIBOPENJPEG_INCLUDE_DIR openjpeg.h PATH_SUFFIXES openjpeg) - find_library(LIBOPENJPEG_LIBRARIES openjpeg) - if(LIBOPENJPEG_INCLUDE_DIR AND LIBOPENJPEG_LIBRARIES) + find_package(PkgConfig REQUIRED) + pkg_check_modules(LIBOPENJPEG libopenjpeg) - set(CMAKE_REQUIRED_INCLUDES ${LIBOPENJPEG_INCLUDE_DIR}) - set(CMAKE_REQUIRED_LIBRARIES ${LIBOPENJPEG_LIBRARIES}) + if(LIBOPENJPEG_FOUND) + add_definitions(-DUSE_OPENJPEG1) + set(LIBOPENJPEG_INCLUDE_DIR ${LIBOPENJPEG_INCLUDE_DIRS}) + else(LIBOPENJPEG_FOUND) + + find_path (LIBOPENJPEG_INCLUDE_DIR openjpeg.h PATH_SUFFIXES openjpeg) + find_library(LIBOPENJPEG_LIBRARIES openjpeg) + if(LIBOPENJPEG_INCLUDE_DIR AND LIBOPENJPEG_LIBRARIES) -check_cxx_source_compiles(" + set(CMAKE_REQUIRED_INCLUDES ${LIBOPENJPEG_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${LIBOPENJPEG_LIBRARIES}) + + check_cxx_source_compiles(" #include <openjpeg.h> int main() { int foo = OPJ_DPARAMETERS_IGNORE_PCLR_CMAP_CDEF_FLAG; return 0; -} -" WITH_OPENJPEG_IGNORE_PCLR_CMAP_CDEF_FLAG) +}" + WITH_OPENJPEG_IGNORE_PCLR_CMAP_CDEF_FLAG) - set(CMAKE_REQUIRED_INCLUDES) - set(CMAKE_REQUIRED_LIBRARIES) + set(CMAKE_REQUIRED_INCLUDES) + set(CMAKE_REQUIRED_LIBRARIES) - set(LIBOPENJPEG_FOUND TRUE) - endif(LIBOPENJPEG_INCLUDE_DIR AND LIBOPENJPEG_LIBRARIES) + set(LIBOPENJPEG_FOUND TRUE) + endif(LIBOPENJPEG_INCLUDE_DIR AND LIBOPENJPEG_LIBRARIES) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(LibOpenJPEG DEFAULT_MSG LIBOPENJPEG_LIBRARIES LIBOPENJPEG_INCLUDE_DIR) + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(LibOpenJPEG DEFAULT_MSG LIBOPENJPEG_LIBRARIES LIBOPENJPEG_INCLUDE_DIR) + endif (LIBOPENJPEG_FOUND) endif (LIBOPENJPEG_LIBRARIES AND LIBOPENJPEG_INCLUDE_DIR) set(LIBOPENJPEG_INCLUDE_DIRS ${LIBOPENJPEG_INCLUDE_DIR}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/configure new/poppler-0.40.0/configure --- old/poppler-0.39.0/configure 2015-12-17 00:10:13.000000000 +0100 +++ new/poppler-0.40.0/configure 2016-01-13 23:20:11.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.39.0. +# Generated by GNU Autoconf 2.69 for poppler 0.40.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.39.0' -PACKAGE_STRING='poppler 0.39.0' +PACKAGE_VERSION='0.40.0' +PACKAGE_STRING='poppler 0.40.0' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=poppler' PACKAGE_URL='' @@ -1541,7 +1541,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.39.0 to adapt to many kinds of systems. +\`configure' configures poppler 0.40.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1616,7 +1616,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of poppler 0.39.0:";; + short | recursive ) echo "Configuration of poppler 0.40.0:";; esac cat <<\_ACEOF @@ -1836,7 +1836,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -poppler configure 0.39.0 +poppler configure 0.40.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2530,7 +2530,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.39.0, which was +It was created by poppler $as_me 0.40.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3394,7 +3394,7 @@ # Define the identity of the package. PACKAGE='poppler' - VERSION='0.39.0' + VERSION='0.40.0' cat >>confdefs.h <<_ACEOF @@ -17790,7 +17790,7 @@ cat >>confdefs.h <<_ACEOF -#define POPPLER_VERSION "0.39.0" +#define POPPLER_VERSION "0.40.0" _ACEOF @@ -25022,11 +25022,11 @@ POPPLER_MAJOR_VERSION=0 -POPPLER_MINOR_VERSION=39 +POPPLER_MINOR_VERSION=40 POPPLER_MICRO_VERSION=0 -POPPLER_VERSION=0.39.0 +POPPLER_VERSION=0.40.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" @@ -25678,7 +25678,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.39.0, which was +This file was extended by poppler $as_me 0.40.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -25744,7 +25744,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.39.0 +poppler config.status 0.40.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.39.0/configure.ac new/poppler-0.40.0/configure.ac --- old/poppler-0.39.0/configure.ac 2015-12-17 00:07:03.000000000 +0100 +++ new/poppler-0.40.0/configure.ac 2016-01-13 23:18:09.000000000 +0100 @@ -1,5 +1,5 @@ m4_define([poppler_version_major],[0]) -m4_define([poppler_version_minor],[39]) +m4_define([poppler_version_minor],[40]) m4_define([poppler_version_micro],[0]) m4_define([poppler_version],[poppler_version_major.poppler_version_minor.poppler_version_micro]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/cpp/CMakeLists.txt new/poppler-0.40.0/cpp/CMakeLists.txt --- old/poppler-0.39.0/cpp/CMakeLists.txt 2015-01-04 22:58:28.000000000 +0100 +++ new/poppler-0.40.0/cpp/CMakeLists.txt 2016-01-13 23:13:59.000000000 +0100 @@ -26,9 +26,8 @@ set_target_properties(poppler-cpp PROPERTIES VERSION 0.2.1 SOVERSION 0) target_link_libraries(poppler-cpp poppler ${ICONV_LIBRARIES}) if(MSVC) -target_link_libraries(poppler-cpp ${poppler_LIBS}) +target_link_libraries(poppler-cpp LINK_PRIVATE ${poppler_LIBS}) endif(MSVC) -target_link_libraries(poppler-cpp LINK_INTERFACE_LIBRARIES "") install(TARGETS poppler-cpp RUNTIME DESTINATION bin LIBRARY DESTINATION lib${LIB_SUFFIX} ARCHIVE DESTINATION lib${LIB_SUFFIX}) install(FILES diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/cpp/poppler-version.h new/poppler-0.40.0/cpp/poppler-version.h --- old/poppler-0.39.0/cpp/poppler-version.h 2015-12-17 00:10:19.000000000 +0100 +++ new/poppler-0.40.0/cpp/poppler-version.h 2016-01-13 23:20:17.000000000 +0100 @@ -21,9 +21,9 @@ #include "poppler-global.h" -#define POPPLER_VERSION "0.39.0" +#define POPPLER_VERSION "0.40.0" #define POPPLER_VERSION_MAJOR 0 -#define POPPLER_VERSION_MINOR 39 +#define POPPLER_VERSION_MINOR 40 #define POPPLER_VERSION_MICRO 0 namespace poppler diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/glib/reference/html/index.html new/poppler-0.40.0/glib/reference/html/index.html --- old/poppler-0.39.0/glib/reference/html/index.html 2015-12-17 00:19:27.000000000 +0100 +++ new/poppler-0.40.0/glib/reference/html/index.html 2016-01-13 23:33:58.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.39.0 + for Poppler 0.40.0 </p></div> </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/glib/reference/html/poppler-Version-and-Features-Information.html new/poppler-0.40.0/glib/reference/html/poppler-Version-and-Features-Information.html --- old/poppler-0.39.0/glib/reference/html/poppler-Version-and-Features-Information.html 2015-12-17 00:19:27.000000000 +0100 +++ new/poppler-0.40.0/glib/reference/html/poppler-Version-and-Features-Information.html 2016-01-13 23:33:58.000000000 +0100 @@ -119,7 +119,7 @@ <hr> <div class="refsect2"> <a name="POPPLER-MINOR-VERSION:CAPS"></a><h3>POPPLER_MINOR_VERSION</h3> -<pre class="programlisting">#define POPPLER_MINOR_VERSION (39) +<pre class="programlisting">#define POPPLER_MINOR_VERSION (40) </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.39.0/glib/reference/version.xml new/poppler-0.40.0/glib/reference/version.xml --- old/poppler-0.39.0/glib/reference/version.xml 2015-12-17 00:10:19.000000000 +0100 +++ new/poppler-0.40.0/glib/reference/version.xml 2016-01-13 23:20:17.000000000 +0100 @@ -1 +1 @@ -0.39.0 +0.40.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/poppler/CairoOutputDev.cc new/poppler-0.40.0/poppler/CairoOutputDev.cc --- old/poppler-0.39.0/poppler/CairoOutputDev.cc 2015-12-16 23:59:30.000000000 +0100 +++ new/poppler-0.40.0/poppler/CairoOutputDev.cc 2016-01-13 23:13:59.000000000 +0100 @@ -1597,8 +1597,6 @@ cairo_get_matrix (cairo, &matrix); //printMatrix(&matrix); cairo_set_matrix (cairo_shape, &matrix); - } else { - cairo_reference (cairo_shape); } } if (groupColorSpaceStack->next && groupColorSpaceStack->next->knockout) { @@ -1638,33 +1636,22 @@ cairo_save (cairo); cairo_set_matrix (cairo, &groupColorSpaceStack->group_matrix); + + if (shape) { + /* OPERATOR_SOURCE w/ a mask is defined as (src IN mask) ADD (dest OUT mask) + * however our source has already been clipped to mask so we only need to + * do ADD and OUT */ + + /* clear the shape mask */ + cairo_set_source (cairo, shape); + cairo_set_operator (cairo, CAIRO_OPERATOR_DEST_OUT); + cairo_paint (cairo); + cairo_set_operator (cairo, CAIRO_OPERATOR_ADD); + } cairo_set_source (cairo, group); if (!mask) { - //XXX: deal with mask && shape case - if (shape) { - cairo_save (cairo); - - /* OPERATOR_SOURCE w/ a mask is defined as (src IN mask) ADD (dest OUT mask) - * however our source has already been clipped to mask so we only need to - * do ADD and OUT */ - - /* clear the shape mask */ - cairo_set_source (cairo, shape); - cairo_set_operator (cairo, CAIRO_OPERATOR_DEST_OUT); - cairo_paint (cairo); - - cairo_set_operator (cairo, CAIRO_OPERATOR_ADD); - cairo_set_source (cairo, group); - cairo_paint (cairo); - - cairo_restore (cairo); - - cairo_pattern_destroy (shape); - shape = NULL; - } else { - cairo_paint_with_alpha (cairo, fill_opacity); - } + cairo_paint_with_alpha (cairo, fill_opacity); cairo_status_t status = cairo_status(cairo); if (status) printf("BAD status: %s\n", cairo_status_to_string(status)); @@ -1684,6 +1671,16 @@ mask = NULL; } + if (shape) { + if (cairo_shape) { + cairo_set_source (cairo_shape, shape); + cairo_paint (cairo_shape); + cairo_set_source_rgb (cairo_shape, 0, 0, 0); + } + cairo_pattern_destroy (shape); + shape = NULL; + } + popTransparencyGroup(); cairo_restore(cairo); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/poppler/Function.cc new/poppler-0.40.0/poppler/Function.cc --- old/poppler-0.39.0/poppler/Function.cc 2014-10-01 22:38:58.000000000 +0200 +++ new/poppler-0.40.0/poppler/Function.cc 2016-01-13 23:14:11.000000000 +0100 @@ -13,7 +13,7 @@ // All changes made under the Poppler project to this file are licensed // under GPL version 2 or later // -// Copyright (C) 2006, 2008-2010, 2013, 2014 Albert Astals Cid <[email protected]> +// Copyright (C) 2006, 2008-2010, 2013-2015 Albert Astals Cid <[email protected]> // Copyright (C) 2006 Jeff Muizelaar <[email protected]> // Copyright (C) 2010 Christian Feuers�nger <[email protected]> // Copyright (C) 2011 Andrea Canciani <[email protected]> @@ -577,6 +577,10 @@ goto err2; } n = obj1.arrayGetLength(); + if (unlikely(n > funcMaxOutputs)) { + error(errSyntaxError, -1, "Function's C0 array is wrong length"); + n = funcMaxOutputs; + } for (i = 0; i < n; ++i) { obj1.arrayGet(i, &obj2); if (!obj2.isNum()) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/poppler/TextOutputDev.cc new/poppler-0.40.0/poppler/TextOutputDev.cc --- old/poppler-0.39.0/poppler/TextOutputDev.cc 2015-11-15 22:05:22.000000000 +0100 +++ new/poppler-0.40.0/poppler/TextOutputDev.cc 2016-01-13 23:13:59.000000000 +0100 @@ -35,6 +35,7 @@ // Copyright (C) 2013 José Aliste <[email protected]> // Copyright (C) 2013 Thomas Freitag <[email protected]> // Copyright (C) 2013 Ed Catmur <[email protected]> +// Copyright (C) 2016 Khaled Hosny <[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 @@ -178,6 +179,94 @@ #define combMaxMidDelta 0.3 #define combMaxBaseDelta 0.4 +static int reorderText(Unicode *text, int len, UnicodeMap *uMap, GBool primaryLR, GooString *s, Unicode* u) { + char lre[8], rle[8], popdf[8], buf[8]; + int lreLen = 0, rleLen = 0, popdfLen = 0, n; + int nCols, i, j, k; + + nCols = 0; + + if (s) { + lreLen = uMap->mapUnicode(0x202a, lre, sizeof(lre)); + rleLen = uMap->mapUnicode(0x202b, rle, sizeof(rle)); + popdfLen = uMap->mapUnicode(0x202c, popdf, sizeof(popdf)); + } + + if (primaryLR) { + i = 0; + while (i < len) { + // output a left-to-right section + for (j = i; j < len && !unicodeTypeR(text[j]); ++j) ; + for (k = i; k < j; ++k) { + if (s) { + n = uMap->mapUnicode(text[k], buf, sizeof(buf)); + s->append(buf, n); + } + if (u) u[nCols] = text[k]; + ++nCols; + } + i = j; + // output a right-to-left section + for (j = i; + j < len && !(unicodeTypeL(text[j]) || unicodeTypeNum(text[j])); + ++j) ; + if (j > i) { + if (s) s->append(rle, rleLen); + for (k = j - 1; k >= i; --k) { + if (s) { + n = uMap->mapUnicode(text[k], buf, sizeof(buf)); + s->append(buf, n); + } + if (u) u[nCols] = text[k]; + ++nCols; + } + if (s) s->append(popdf, popdfLen); + i = j; + } + } + } else { + // Note: This code treats numeric characters (European and + // Arabic/Indic) as left-to-right, which isn't strictly correct + // (incurs extra LRE/POPDF pairs), but does produce correct + // visual formatting. + if (s) s->append(rle, rleLen); + i = len - 1; + while (i >= 0) { + // output a right-to-left section + for (j = i; + j >= 0 && !(unicodeTypeL(text[j]) || unicodeTypeNum(text[j])); + --j) ; + for (k = i; k > j; --k) { + if (s) { + n = uMap->mapUnicode(text[k], buf, sizeof(buf)); + s->append(buf, n); + } + if (u) u[nCols] = text[k]; + ++nCols; + } + i = j; + // output a left-to-right section + for (j = i; j >= 0 && !unicodeTypeR(text[j]); --j) ; + if (j < i) { + if (s) s->append(lre, lreLen); + for (k = j + 1; k <= i; ++k) { + if (s) { + n = uMap->mapUnicode(text[k], buf, sizeof(buf)); + s->append(buf, n); + } + if (u) u[nCols] = text[k]; + ++nCols; + } + if (s) s->append(popdf, popdfLen); + i = j; + } + } + if (s) s->append(popdf, popdfLen); + } + + return nCols; +} + //------------------------------------------------------------------------ // TextUnderline //------------------------------------------------------------------------ @@ -3720,7 +3809,7 @@ double *xMax, double *yMax) { TextBlock *blk; TextLine *line; - Unicode *s2, *txt; + Unicode *s2, *txt, *reordered; Unicode *p; int txtSize, m, i, j, k; double xStart, yStart, xStop, yStop; @@ -3728,20 +3817,23 @@ double xMin1, yMin1, xMax1, yMax1; GBool found; - //~ needs to handle right-to-left text if (rawOrder) { return gFalse; } + // handle right-to-left text + reordered = (Unicode*)gmallocn(len, sizeof(Unicode)); + reorderText(s, len, NULL, primaryLR, NULL, reordered); + + // normalize the search string + s2 = unicodeNormalizeNFKC(reordered, len, &len, NULL); + // convert the search string to uppercase if (!caseSensitive) { - s2 = unicodeNormalizeNFKC(s, len, &len, NULL); for (i = 0; i < len; ++i) { s2[i] = unicodeToUpper(s2[i]); } - } else { - s2 = unicodeNormalizeNFKC(s, len, &len, NULL); } txt = NULL; @@ -3809,7 +3901,8 @@ if (!line->normalized) line->normalized = unicodeNormalizeNFKC(line->text, line->len, &line->normalized_len, - &line->normalized_idx); + &line->normalized_idx, + true); // convert the line to uppercase m = line->normalized_len; if (!caseSensitive) { @@ -3915,6 +4008,7 @@ } gfree(s2); + gfree(reordered); if (!caseSensitive) { gfree(txt); } @@ -5330,91 +5424,22 @@ int TextPage::dumpFragment(Unicode *text, int len, UnicodeMap *uMap, GooString *s) { - char lre[8], rle[8], popdf[8], buf[8]; - int lreLen, rleLen, popdfLen, n; - int nCols, i, j, k; - - nCols = 0; - if (uMap->isUnicode()) { + return reorderText(text, len, uMap, primaryLR, s, NULL); + } else { + int nCols = 0; - lreLen = uMap->mapUnicode(0x202a, lre, sizeof(lre)); - rleLen = uMap->mapUnicode(0x202b, rle, sizeof(rle)); - popdfLen = uMap->mapUnicode(0x202c, popdf, sizeof(popdf)); - - if (primaryLR) { - - i = 0; - while (i < len) { - // output a left-to-right section - for (j = i; j < len && !unicodeTypeR(text[j]); ++j) ; - for (k = i; k < j; ++k) { - n = uMap->mapUnicode(text[k], buf, sizeof(buf)); - s->append(buf, n); - ++nCols; - } - i = j; - // output a right-to-left section - for (j = i; - j < len && !(unicodeTypeL(text[j]) || unicodeTypeNum(text[j])); - ++j) ; - if (j > i) { - s->append(rle, rleLen); - for (k = j - 1; k >= i; --k) { - n = uMap->mapUnicode(text[k], buf, sizeof(buf)); - s->append(buf, n); - ++nCols; - } - s->append(popdf, popdfLen); - i = j; - } - } - - } else { - - // Note: This code treats numeric characters (European and - // Arabic/Indic) as left-to-right, which isn't strictly correct - // (incurs extra LRE/POPDF pairs), but does produce correct - // visual formatting. - s->append(rle, rleLen); - i = len - 1; - while (i >= 0) { - // output a right-to-left section - for (j = i; - j >= 0 && !(unicodeTypeL(text[j]) || unicodeTypeNum(text[j])); - --j) ; - for (k = i; k > j; --k) { - n = uMap->mapUnicode(text[k], buf, sizeof(buf)); - s->append(buf, n); - ++nCols; - } - i = j; - // output a left-to-right section - for (j = i; j >= 0 && !unicodeTypeR(text[j]); --j) ; - if (j < i) { - s->append(lre, lreLen); - for (k = j + 1; k <= i; ++k) { - n = uMap->mapUnicode(text[k], buf, sizeof(buf)); - s->append(buf, n); - ++nCols; - } - s->append(popdf, popdfLen); - i = j; - } - } - s->append(popdf, popdfLen); + char buf[8]; + int buflen = 0; + for (int i = 0; i < len; ++i) { + buflen = uMap->mapUnicode(text[i], buf, sizeof(buf)); + s->append(buf, buflen); + nCols += buflen; } - } else { - for (i = 0; i < len; ++i) { - n = uMap->mapUnicode(text[i], buf, sizeof(buf)); - s->append(buf, n); - nCols += n; - } + return nCols; } - - return nCols; } #if TEXTOUT_WORD_LIST diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/poppler/UnicodeTypeTable.cc new/poppler-0.40.0/poppler/UnicodeTypeTable.cc --- old/poppler-0.39.0/poppler/UnicodeTypeTable.cc 2014-02-09 16:10:33.000000000 +0100 +++ new/poppler-0.40.0/poppler/UnicodeTypeTable.cc 2016-01-13 23:13:59.000000000 +0100 @@ -17,6 +17,7 @@ // Copyright (C) 2007 Jeff Muizelaar <[email protected]> // Copyright (C) 2008 Albert Astals Cid <[email protected]> // Copyright (C) 2012 Adrian Johnson <[email protected]> +// Copyright (C) 2016 Khaled Hosny <[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 @@ -1015,7 +1016,9 @@ // of characters written. @buf may be NULL, in which case the length of the // decomposition is returned but nothing is written. If @u is its own // decomposition, write @u into @buf and return 1. -static int decomp_compat(Unicode u, Unicode *buf) { +// If reverseRTL is true, then decompositions of RTL characters will be output +// in reverse order. +static int decomp_compat(Unicode u, Unicode *buf, GBool reverseRTL = false) { // decomposition tables stored as lists {character, decomp_length, offset} // so we do a binary search int start = 0, end = DECOMP_TABLE_LENGTH; @@ -1031,7 +1034,10 @@ int length = decomp_table[midpoint].length, i; if (buf) for (i = 0; i < length; ++i) - buf[i] = decomp_expansion[offset + i]; + if (unicodeTypeR(u) && reverseRTL) + buf[i] = decomp_expansion[offset + length - i - 1]; + else + buf[i] = decomp_expansion[offset + i]; return length; } } else if (midpoint == start) @@ -1125,8 +1131,14 @@ // for each character in the normalized string giving the index in @in of the // corresponding unnormalized character. @indices is not guaranteed monotone or // onto. -Unicode *unicodeNormalizeNFKC(Unicode *in, int len, +Unicode *unicodeNormalizeNFKC(Unicode *in, int len, int *out_len, int **indices) { + return unicodeNormalizeNFKC(in, len, out_len, indices, false); +} + +Unicode *unicodeNormalizeNFKC(Unicode *in, int len, + int *out_len, int **indices, + GBool reverseRTL) { Unicode *out; int i, o, *classes, *idx = NULL; @@ -1174,7 +1186,7 @@ u = in[j]; if (j != i && COMBINING_CLASS(u) == 0) break; - dlen = decomp_compat(u, out + p); + dlen = decomp_compat(u, out + p, reverseRTL); for (q = p; q < p + dlen; ++q) { classes[q] = COMBINING_CLASS(out[q]); if (indices) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/poppler/UnicodeTypeTable.h new/poppler-0.40.0/poppler/UnicodeTypeTable.h --- old/poppler-0.39.0/poppler/UnicodeTypeTable.h 2014-02-09 16:10:33.000000000 +0100 +++ new/poppler-0.40.0/poppler/UnicodeTypeTable.h 2016-01-13 23:13:59.000000000 +0100 @@ -15,6 +15,7 @@ // // Copyright (C) 2006 Ed Catmur <[email protected]> // Copyright (C) 2012 Adrian Johnson <[email protected]> +// Copyright (C) 2016 Khaled Hosny <[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 @@ -38,7 +39,11 @@ extern Unicode unicodeToUpper(Unicode c); -extern Unicode *unicodeNormalizeNFKC(Unicode *in, int len, +extern Unicode *unicodeNormalizeNFKC(Unicode *in, int len, int *out_len, int **offsets); +extern Unicode *unicodeNormalizeNFKC(Unicode *in, int len, + int *out_len, int **offsets, + GBool reverseRTL); + #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/poppler/poppler-config.h.cmake new/poppler-0.40.0/poppler/poppler-config.h.cmake --- old/poppler-0.39.0/poppler/poppler-config.h.cmake 2015-10-05 16:04:39.000000000 +0200 +++ new/poppler-0.40.0/poppler/poppler-config.h.cmake 2016-01-13 23:13:59.000000000 +0100 @@ -134,7 +134,7 @@ //------------------------------------------------------------------------ // copyright notice -#define popplerCopyright "Copyright 2005-2015 The Poppler Developers - http://poppler.freedesktop.org" +#define popplerCopyright "Copyright 2005-2016 The Poppler Developers - http://poppler.freedesktop.org" #define xpdfCopyright "Copyright 1996-2011 Glyph & Cog, LLC" //------------------------------------------------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/poppler/poppler-config.h.in new/poppler-0.40.0/poppler/poppler-config.h.in --- old/poppler-0.39.0/poppler/poppler-config.h.in 2015-01-04 23:11:09.000000000 +0100 +++ new/poppler-0.40.0/poppler/poppler-config.h.in 2016-01-13 23:13:59.000000000 +0100 @@ -134,7 +134,7 @@ //------------------------------------------------------------------------ // copyright notice -#define popplerCopyright "Copyright 2005-2015 The Poppler Developers - http://poppler.freedesktop.org" +#define popplerCopyright "Copyright 2005-2016 The Poppler Developers - http://poppler.freedesktop.org" #define xpdfCopyright "Copyright 1996-2011 Glyph & Cog, LLC" //------------------------------------------------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/qt4/tests/CMakeLists.txt new/poppler-0.40.0/qt4/tests/CMakeLists.txt --- old/poppler-0.39.0/qt4/tests/CMakeLists.txt 2014-03-21 23:13:45.000000000 +0100 +++ new/poppler-0.40.0/qt4/tests/CMakeLists.txt 2016-01-13 23:13:59.000000000 +0100 @@ -38,30 +38,30 @@ qt4_add_simpletest(test-poppler-qt4 test-poppler-qt4.cpp) qt4_add_simpletest(test-password-qt4 test-password-qt4.cpp) -qt4_add_simpletest(test-render-to-file test-render-to-file.cpp) -qt4_add_simpletest(poppler-forms poppler-forms.cpp) -qt4_add_simpletest(poppler-fonts poppler-fonts.cpp) -qt4_add_simpletest(poppler_attachments poppler-attachments.cpp) +qt4_add_simpletest(test-render-to-file-qt4 test-render-to-file.cpp) +qt4_add_simpletest(poppler-qt4-forms poppler-forms.cpp) +qt4_add_simpletest(poppler-qt4-fonts poppler-fonts.cpp) +qt4_add_simpletest(poppler-qt4-attachments poppler-attachments.cpp) qt4_add_simpletest(stress-poppler-qt4 stress-poppler-qt4.cpp) -qt4_add_simpletest(stress-poppler-dir stress-poppler-dir.cpp) +qt4_add_simpletest(stress-poppler-dir-qt4 stress-poppler-dir.cpp) qt4_add_simpletest(stress-threads-qt4 stress-threads-qt4.cpp) -qt4_add_simpletest(poppler-texts poppler-texts.cpp) +qt4_add_simpletest(poppler-qt4-texts poppler-texts.cpp) -qt4_add_qtest(check_attachments check_attachments.cpp) -qt4_add_qtest(check_dateConversion check_dateConversion.cpp) -qt4_add_qtest(check_fonts check_fonts.cpp) -qt4_add_qtest(check_links check_links.cpp) -qt4_add_qtest(check_metadata check_metadata.cpp) -qt4_add_qtest(check_optcontent check_optcontent.cpp) -qt4_add_qtest(check_pagelayout check_pagelayout.cpp) -qt4_add_qtest(check_pagemode check_pagemode.cpp) -qt4_add_qtest(check_password check_password.cpp) -qt4_add_qtest(check_permissions check_permissions.cpp) -qt4_add_qtest(check_search check_search.cpp) -qt4_add_qtest(check_actualtext check_actualtext.cpp) -qt4_add_qtest(check_lexer check_lexer.cpp) -qt4_add_qtest(check_pagelabelinfo check_pagelabelinfo.cpp) -qt4_add_qtest(check_goostring check_goostring.cpp) +qt4_add_qtest(check_qt4_attachments check_attachments.cpp) +qt4_add_qtest(check_qt4_dateConversion check_dateConversion.cpp) +qt4_add_qtest(check_qt4_fonts check_fonts.cpp) +qt4_add_qtest(check_qt4_links check_links.cpp) +qt4_add_qtest(check_qt4_metadata check_metadata.cpp) +qt4_add_qtest(check_qt4_optcontent check_optcontent.cpp) +qt4_add_qtest(check_qt4_pagelayout check_pagelayout.cpp) +qt4_add_qtest(check_qt4_pagemode check_pagemode.cpp) +qt4_add_qtest(check_qt4_password check_password.cpp) +qt4_add_qtest(check_qt4_permissions check_permissions.cpp) +qt4_add_qtest(check_qt4_search check_search.cpp) +qt4_add_qtest(check_qt4_actualtext check_actualtext.cpp) +qt4_add_qtest(check_qt4_lexer check_lexer.cpp) +qt4_add_qtest(check_qt4_pagelabelinfo check_pagelabelinfo.cpp) +qt4_add_qtest(check_qt4_goostring check_goostring.cpp) if (NOT WIN32) - qt4_add_qtest(check_strings check_strings.cpp) + qt4_add_qtest(check_qt4_strings check_strings.cpp) endif (NOT WIN32) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/qt5/CMakeLists.txt new/poppler-0.40.0/qt5/CMakeLists.txt --- old/poppler-0.39.0/qt5/CMakeLists.txt 2015-07-10 22:10:25.000000000 +0200 +++ new/poppler-0.40.0/qt5/CMakeLists.txt 2016-01-13 23:13:59.000000000 +0100 @@ -1,3 +1,5 @@ +set(CMAKE_AUTOMOC ON) + add_subdirectory(src) add_subdirectory(tests) add_subdirectory(demos) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/qt5/demos/CMakeLists.txt new/poppler-0.40.0/qt5/demos/CMakeLists.txt --- old/poppler-0.39.0/qt5/demos/CMakeLists.txt 2014-02-09 16:10:33.000000000 +0100 +++ new/poppler-0.40.0/qt5/demos/CMakeLists.txt 2016-01-13 23:13:59.000000000 +0100 @@ -1,5 +1,3 @@ -set(CMAKE_AUTOMOC ON) - add_definitions(${QT5_DEFINITIONS}) add_definitions(${Qt5Core_DEFINITIONS}) add_definitions(${Qt5Gui_DEFINITIONS}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/qt5/src/CMakeLists.txt new/poppler-0.40.0/qt5/src/CMakeLists.txt --- old/poppler-0.39.0/qt5/src/CMakeLists.txt 2015-10-28 23:11:50.000000000 +0100 +++ new/poppler-0.40.0/qt5/src/CMakeLists.txt 2016-01-13 23:13:59.000000000 +0100 @@ -1,8 +1,6 @@ add_definitions(${QT5_DEFINITIONS}) add_definitions(${Qt5Core_DEFINITIONS}) -set(CMAKE_AUTOMOC ON) - include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${Qt5Core_INCLUDE_DIRS} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/qt5/tests/CMakeLists.txt new/poppler-0.40.0/qt5/tests/CMakeLists.txt --- old/poppler-0.39.0/qt5/tests/CMakeLists.txt 2015-07-12 23:20:18.000000000 +0200 +++ new/poppler-0.40.0/qt5/tests/CMakeLists.txt 2016-01-13 23:13:59.000000000 +0100 @@ -1,5 +1,3 @@ -set(CMAKE_AUTOMOC ON) - add_definitions(${Qt5Core_DEFINITIONS}) add_definitions(-DTESTDATADIR=\"${TESTDATADIR}\") @@ -37,9 +35,9 @@ ${source} ) poppler_add_unittest(${exe} BUILD_QT5_TESTS ${${test_name}_SOURCES}) - target_link_libraries(${exe} poppler-qt5 ${Qt5Widgets_LIBRARIES} ${Qt5Test_LIBRARIES} ${Qt5Core_LIBRARIES} ${Qt5Gui_LIBRARIES}) + target_link_libraries(${exe} poppler-qt5 ${Qt5Widgets_LIBRARIES} ${Qt5Test_LIBRARIES} ${Qt5Core_LIBRARIES} ${Qt5Gui_LIBRARIES}) if(MSVC) - target_link_libraries(${exe} poppler ${poppler_LIBS}) + target_link_libraries(${exe} poppler ${poppler_LIBS}) endif(MSVC) endif (Qt5Test_FOUND) endmacro(QT5_ADD_QTEST) @@ -47,30 +45,30 @@ qt5_add_simpletest(test-poppler-qt5 test-poppler-qt5.cpp) qt5_add_simpletest(test-password-qt5 test-password-qt5.cpp) -qt5_add_simpletest(test-render-to-file test-render-to-file.cpp) -qt5_add_simpletest(poppler-forms poppler-forms.cpp) -qt5_add_simpletest(poppler-fonts poppler-fonts.cpp) -qt5_add_simpletest(poppler_attachments poppler-attachments.cpp) +qt5_add_simpletest(test-render-to-file-qt5 test-render-to-file.cpp) +qt5_add_simpletest(poppler-qt5-forms poppler-forms.cpp) +qt5_add_simpletest(poppler-qt5-fonts poppler-fonts.cpp) +qt5_add_simpletest(poppler-qt5-attachments poppler-attachments.cpp) qt5_add_simpletest(stress-poppler-qt5 stress-poppler-qt5.cpp) -qt5_add_simpletest(stress-poppler-dir stress-poppler-dir.cpp) +qt5_add_simpletest(stress-poppler-dir-qt5 stress-poppler-dir.cpp) qt5_add_simpletest(stress-threads-qt5 stress-threads-qt5.cpp) -qt5_add_simpletest(poppler-texts poppler-texts.cpp) +qt5_add_simpletest(poppler-qt5-texts poppler-texts.cpp) -qt5_add_qtest(check_attachments check_attachments.cpp) -qt5_add_qtest(check_dateConversion check_dateConversion.cpp) -qt5_add_qtest(check_fonts check_fonts.cpp) -qt5_add_qtest(check_links check_links.cpp) -qt5_add_qtest(check_metadata check_metadata.cpp) -qt5_add_qtest(check_optcontent check_optcontent.cpp) -qt5_add_qtest(check_pagelayout check_pagelayout.cpp) -qt5_add_qtest(check_pagemode check_pagemode.cpp) -qt5_add_qtest(check_password check_password.cpp) -qt5_add_qtest(check_permissions check_permissions.cpp) -qt5_add_qtest(check_search check_search.cpp) -qt5_add_qtest(check_actualtext check_actualtext.cpp) -qt5_add_qtest(check_lexer check_lexer.cpp) -qt5_add_qtest(check_pagelabelinfo check_pagelabelinfo.cpp) -qt5_add_qtest(check_goostring check_goostring.cpp) +qt5_add_qtest(check_qt5_attachments check_attachments.cpp) +qt5_add_qtest(check_qt5_dateConversion check_dateConversion.cpp) +qt5_add_qtest(check_qt5_fonts check_fonts.cpp) +qt5_add_qtest(check_qt5_links check_links.cpp) +qt5_add_qtest(check_qt5_metadata check_metadata.cpp) +qt5_add_qtest(check_qt5_optcontent check_optcontent.cpp) +qt5_add_qtest(check_qt5_pagelayout check_pagelayout.cpp) +qt5_add_qtest(check_qt5_pagemode check_pagemode.cpp) +qt5_add_qtest(check_qt5_password check_password.cpp) +qt5_add_qtest(check_qt5_permissions check_permissions.cpp) +qt5_add_qtest(check_qt5_search check_search.cpp) +qt5_add_qtest(check_qt5_actualtext check_actualtext.cpp) +qt5_add_qtest(check_qt5_lexer check_lexer.cpp) +qt5_add_qtest(check_qt5_pagelabelinfo check_pagelabelinfo.cpp) +qt5_add_qtest(check_qt5_goostring check_goostring.cpp) if (NOT WIN32) - qt5_add_qtest(check_strings check_strings.cpp) + qt5_add_qtest(check_qt5_strings check_strings.cpp) endif (NOT WIN32) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/utils/pdftocairo.1 new/poppler-0.40.0/utils/pdftocairo.1 --- old/poppler-0.39.0/utils/pdftocairo.1 2014-10-26 23:00:59.000000000 +0100 +++ new/poppler-0.40.0/utils/pdftocairo.1 2016-01-13 23:13:59.000000000 +0100 @@ -1,4 +1,4 @@ -.TH pdftoppm 1 +.TH pdftocairo 1 .SH NAME pdftocairo \- Portable Document Format (PDF) to PNG/JPEG/TIFF/PDF/PS/EPS/SVG using cairo .SH SYNOPSIS @@ -32,9 +32,10 @@ and writes to .IR output-file . The image formats (PNG, JPEG, and TIFF) generate one file per page with the page number and file type appended to -.IR output-file -(except when \-singlefile is used). -When the output format is a vector format (PDF, PS, EPS, and SVG) or when \-singlefile is used, +.IR output-file . +qWhen \-singlefile is used with the image formats, the file type is appended to +.IR output-file . +When the output format is a vector format (PDF, PS, EPS, and SVG), .IR output-file is the full filename. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/utils/pdftocairo.cc new/poppler-0.40.0/utils/pdftocairo.cc --- old/poppler-0.39.0/utils/pdftocairo.cc 2015-12-16 23:58:58.000000000 +0100 +++ new/poppler-0.40.0/utils/pdftocairo.cc 2016-01-13 23:14:26.000000000 +0100 @@ -19,7 +19,7 @@ // Copyright (C) 2009 Shen Liang <[email protected]> // Copyright (C) 2009 Stefan Thomas <[email protected]> // Copyright (C) 2009, 2010 Albert Astals Cid <[email protected]> -// Copyright (C) 2010, 2011-2015 Adrian Johnson <[email protected]> +// Copyright (C) 2010, 2011-2016 Adrian Johnson <[email protected]> // Copyright (C) 2010, 2014 Hib Eris <[email protected]> // Copyright (C) 2010 Jonathan Liu <[email protected]> // Copyright (C) 2010 William Bader <[email protected]> @@ -351,6 +351,7 @@ height = cairo_image_surface_get_height(surface); width = cairo_image_surface_get_width(surface); stride = cairo_image_surface_get_stride(surface); + cairo_surface_flush(surface); data = cairo_image_surface_get_data(surface); if (!writer->init(file, width, height, x_resolution, y_resolution)) { @@ -725,12 +726,14 @@ snprintf(buf, sizeof(buf), "-%0*d", numDigits, page); imageName->append(buf); } - if (png) - imageName->append(".png"); - else if (jpeg) - imageName->append(".jpg"); - else if (tiff) - imageName->append(".tif"); + if (outputFileName->cmp("fd://0") != 0) { + if (png) + imageName->append(".png"); + else if (jpeg) + imageName->append(".jpg"); + else if (tiff) + imageName->append(".tif"); + } return imageName; } @@ -832,8 +835,10 @@ int num_outputs; // parse args - if (!parseArgs(argDesc, &argc, argv)) + if (!parseArgs(argDesc, &argc, argv)) { + printUsage("pdftocairo", 0, argDesc); exit(99); + } if ( resolution != 0.0 && (x_resolution == 150.0 || @@ -883,6 +888,9 @@ checkInvalidPrintOption(icc.getCString()[0], "-icc"); checkInvalidPrintOption(singleFile, "-singlefile"); checkInvalidPrintOption(useCropBox, "-cropbox"); + checkInvalidPrintOption(scaleTo != 0, "-scale-to"); + checkInvalidPrintOption(x_scaleTo != 0, "-scale-to-x"); + checkInvalidPrintOption(y_scaleTo != 0, "-scale-to-y"); } else { checkInvalidImageOption(level2, "-level2"); checkInvalidImageOption(level3, "-level3"); @@ -937,6 +945,11 @@ exit(99); } + if ((paperWidth > 0 && paperHeight <= 0) || (paperWidth <= 0 && paperHeight > 0)) { + fprintf(stderr, "Error: both -paperw and -paperh must be specified.\n"); + exit(99); + } + if (paperSize[0]) { if (origPageSizes) { fprintf(stderr, "Error: -origpagesizes and -paper may not be used together.\n"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/poppler-0.39.0/utils/pdfunite.1 new/poppler-0.40.0/utils/pdfunite.1 --- old/poppler-0.39.0/utils/pdfunite.1 2014-08-12 17:21:24.000000000 +0200 +++ new/poppler-0.40.0/utils/pdfunite.1 2016-01-13 23:13:59.000000000 +0100 @@ -8,7 +8,7 @@ .I PDF-sourcefile1..PDF-sourcefilen PDF-destfile .SH DESCRIPTION .B pdfunite -merges several PDF (Portable Document Format) files in order of their occurence on command line to one PDF result file. +merges several PDF (Portable Document Format) files in order of their occurrence on command line to one PDF result file. .TP Neither of the PDF-sourcefile1 to PDF-sourcefilen should be encrypted. .SH OPTIONS
