commit c7f3f602f8aa648feed2aee8f17c540c19dc1cca
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Oct 1 09:51:25 2021 +0200

    Poppler 21.10.0

 CMakeLists.txt         |  4 ++--
 NEWS                   | 28 ++++++++++++++++++++++++++++
 cpp/Doxyfile           |  2 +-
 qt5/src/CMakeLists.txt |  2 +-
 qt5/src/Doxyfile       |  2 +-
 qt6/src/CMakeLists.txt |  2 +-
 qt6/src/Doxyfile       |  2 +-
 7 files changed, 35 insertions(+), 7 deletions(-)

commit 015fabcd763f862983a1d57077fb6f73e64937ed
Author: Christian Persch <chpe@src.gnome.org>
Date:   Thu Sep 30 17:48:24 2021 +0200

    glib: Remove incorrect deprecation

    PopplerAttachment is a non-deprecated object, and
    PopplerAttachmentClass
    is its object class structure.  While it was probably not intended
    to be
    public, an object's class struct cannot be deprecated-for the object's
    instance struct.  Remove the erroneous deprecation from commit
    e7fa274dd7c0bd5e66a3b68329d7d56541bb839b.

 glib/poppler-attachment.h | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

commit f08341bf5b776165923d8110e287b1b8eda26c9c
Author: Albert Astals Cid <aacid@kde.org>
Date:   Mon Sep 27 19:43:09 2021 +0200

    Update (C)

 poppler/Form.cc             | 1 +
 poppler/Form.h              | 1 +
 poppler/SignatureHandler.cc | 1 +
 poppler/SignatureHandler.h  | 1 +
 qt5/src/poppler-form.cc     | 1 +
 qt5/src/poppler-form.h      | 1 +
 qt6/src/poppler-form.cc     | 1 +
 qt6/src/poppler-form.h      | 1 +
 utils/pdfsig.cc             | 1 +
 9 files changed, 9 insertions(+)

commit e5516f8c1827862a7e650dd850b0e919a2d6c51e
Author: Theofilos Intzoglou <int.teo@gmail.com>
Date:   Mon Sep 27 10:07:05 2021 +0000

    Add support for AIA fetching to verify certificates

 poppler/Form.cc             |  8 ++++----
 poppler/Form.h              |  4 ++--
 poppler/SignatureHandler.cc | 12 +++++++++---
 poppler/SignatureHandler.h  |  2 +-
 qt5/src/poppler-form.cc     |  2 +-
 qt5/src/poppler-form.h      |  3 ++-
 qt6/src/poppler-form.cc     |  2 +-
 qt6/src/poppler-form.h      |  3 ++-
 utils/pdfsig.1              |  3 +++
 utils/pdfsig.cc             |  4 +++-
 10 files changed, 28 insertions(+), 15 deletions(-)

commit bf92b981ece533e814d10bc2bae20c8d4f96bdf4
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Sep 26 19:16:31 2021 +0200

    Make Catalog::readMetadata return an unique_ptr

    Makes ownership much clearer

 glib/poppler-document.cc    | 5 ++---
 poppler/Catalog.cc          | 8 ++++----
 poppler/Catalog.h           | 2 +-
 poppler/PDFDoc.h            | 2 +-
 qt5/src/poppler-document.cc | 5 ++---
 qt6/src/poppler-document.cc | 5 ++---
 utils/pdfinfo.cc            | 8 +++-----
 7 files changed, 15 insertions(+), 20 deletions(-)

commit 66890c1cbf9c2a37b3bb9ec36562e78d88fb5348
Author: Adrian Johnson <ajohnson@redneon.com>
Date:   Sun Sep 26 19:41:39 2021 +0930

    pdfinfo: add metadata flags

 utils/pdfinfo.1  |  12 ++++++
 utils/pdfinfo.cc | 115
 +++++++++++++++++++++++++++++++++----------------------
 2 files changed, 82 insertions(+), 45 deletions(-)

commit 3b8a01589cc8f0e96b4e405050f5c73fc665752e
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sat Sep 25 18:53:53 2021 +0200

    Fix copy&paste mistake of previous commit

    Found by Claude Heiland-Allen

 poppler/SplashOutputDev.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 07ce486444556f4d3b103e41219913f087d20ed2
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sat Sep 25 12:47:37 2021 +0200

    Splash: Fix pattern whose values are not 0 but close enough

    They were causing the resulting calculation to be bad

    The new code looks "weird" as it basically just talkes the max
    value out
    of 2 values in the matrix, but i've played with different values
    and it
    works fine and the test suite can't find any rendering
    regression either

    Issue #1138

 poppler/SplashOutputDev.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d90f153e70b5a2f58d48c3381e7e26a40a891047
Author: Albert Astals Cid <aacid@kde.org>
Date:   Mon Sep 20 14:41:13 2021 +0200

    SignatureHandler::validateCertificate: Add option to not do OCSP
    revocaction check

    OCSP contacts the internet so we may not want to do it either because
    the device doesn't have internet or because we don't want to "leak"
    information that we're validating something.

 poppler/Form.cc             |  8 ++++----
 poppler/Form.h              |  4 ++--
 poppler/SignatureHandler.cc | 10 +++++++---
 poppler/SignatureHandler.h  |  4 ++--
 qt5/src/poppler-form.cc     |  2 +-
 qt5/src/poppler-form.h      |  1 +
 qt6/src/poppler-form.cc     |  2 +-
 qt6/src/poppler-form.h      |  1 +
 utils/pdfsig.1              | 10 ++++++++--
 utils/pdfsig.cc             |  4 +++-
 10 files changed, 30 insertions(+), 16 deletions(-)

commit 6bdf5710b0fb13bddc1d31c32d6622516221151d
Author: Albert Astals Cid <aacid@kde.org>
Date:   Mon Sep 20 11:45:05 2021 +0200

    pdfsig: Don't infinite loop if the NSS password given is wrong

 utils/pdfsig.cc | 37 ++++++++++++++++++++++++++-----------
 1 file changed, 26 insertions(+), 11 deletions(-)

commit 03cc342c2a06ff7550dd6ce9180c64d92f75a8ce
Author: Albert Astals Cid <aacid@kde.org>
Date:   Mon Sep 20 09:34:47 2021 +0200

    CI: Also compile the curl-dependent code on build_mingw64_fedora33

 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e9e6fe93e89f9a29f10d843e23b8bbe79c54d9bc
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 12:05:07 2021 +0200

    pdfsig: You can now add signatures from pdfsig

    Issue #1073

 utils/pdfsig.1  |  22 ++++++++++--
 utils/pdfsig.cc | 108
 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 2 files changed, 113 insertions(+), 17 deletions(-)

commit 62f014c45dce190df32313b35ec76f5329321c7f
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 13:43:00 2021 +0200

    pdfsig: fix typo in man page

    Thanks Adrian Johnson for the heads up

 utils/pdfsig.1 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 431d2e6c9e367f8fada13205d527b38282200207
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 12:33:52 2021 +0200

    PDFDoc::sign: make page be 1 indexed like on the PDFDoc functions

 poppler/PDFDoc.cc                | 2 +-
 qt5/src/poppler-pdf-converter.cc | 2 +-
 qt6/src/poppler-pdf-converter.cc | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 609992087a1e9ba85e24e76f59235b06149c7354
Author: Oliver Sander <oliver.sander@tu-dresden.de>
Date:   Wed Sep 15 15:12:24 2021 +0200

    Store GfxFont::encodingName by value, in a std::string

    Storing by value saves various heap allocations.  Using std::string
    instead of GooString brings the code closer to standard C++.

 glib/poppler-document.cc |  9 ++++-----
 poppler/FontInfo.cc      |  7 +++----
 poppler/FontInfo.h       |  6 +++---
 poppler/GfxFont.cc       | 25 +++++++++++--------------
 poppler/GfxFont.h        |  5 +++--
 utils/pdffonts.cc        |  4 ++--
 6 files changed, 26 insertions(+), 30 deletions(-)

commit a646ed9b0a544b87d4998a7209b340970db6a53d
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 12:07:47 2021 +0200

    Update (C)

 poppler/PDFDoc.cc         | 1 +
 poppler/PDFDoc.h          | 1 +
 qt5/src/poppler-private.h | 1 +
 qt6/src/poppler-private.h | 1 +
 utils/pdfsig.cc           | 1 +
 5 files changed, 5 insertions(+)

commit a03ec4540bb7cf5aa462b818c335965c4f7f1d2a
Author: Georgiy Sgibnev <georgiy@sgibnev.com>
Date:   Thu Sep 16 10:04:45 2021 +0000

    Correct encoding of signature's properties Reason & Location + Qt API

 poppler/Form.cc                    | 16 ++++++++++------
 poppler/Form.h                     | 12 +++++++-----
 poppler/PDFDoc.cc                  |  4 ++--
 poppler/PDFDoc.h                   |  4 +++-
 poppler/UTF.cc                     | 23 +++++++++++++++++++++++
 poppler/UTF.h                      |  7 +++++++
 qt5/src/poppler-pdf-converter.cc   | 28 ++++++++++++++++++++++++++--
 qt5/src/poppler-private.h          |  2 ++
 qt5/src/poppler-qt5.h              | 21 +++++++++++++++++++++
 qt5/tests/check_utf_conversion.cpp |  5 +++++
 qt6/src/poppler-pdf-converter.cc   | 30 +++++++++++++++++++++++++++---
 qt6/src/poppler-private.h          |  2 ++
 qt6/src/poppler-qt6.h              | 21 +++++++++++++++++++++
 qt6/tests/check_utf_conversion.cpp |  5 +++++
 utils/pdfsig.cc                    |  9 +++++----
 15 files changed, 166 insertions(+), 23 deletions(-)

commit 5960933f6e22df200e4d6bc6edb799e38b06df42
Author: Albert Astals Cid <aacid@kde.org>
Date:   Wed Sep 15 17:55:41 2021 +0200

    Move the code to sign a document from the qt frontend to PDFDoc

 poppler/Annot.cc                 |  2 +-
 poppler/Annot.h                  |  2 +-
 poppler/PDFDoc.cc                | 71
 ++++++++++++++++++++++++++++++++++++++++
 poppler/PDFDoc.h                 |  3 ++
 qt5/src/poppler-pdf-converter.cc | 70
 ++-------------------------------------
 qt6/src/poppler-pdf-converter.cc | 70
 ++-------------------------------------
 6 files changed, 82 insertions(+), 136 deletions(-)

commit 5cc48423fe42202ba5a0744eaa33193cbb85eab4
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 10:23:25 2021 +0200

    pdfsig: Rework the param check flow

    It's easier to understand now

 utils/pdfsig.cc | 71
 ++++++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 48 insertions(+), 23 deletions(-)

commit 4eb0f56a92113de45e4ec0e10e90f23d4a9227bc
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 10:06:26 2021 +0200

    pdfsig: setNSSDir needs to be called before
    getAvailableSigningCertificates

 utils/pdfsig.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7e267e09a4927c45ff5a38e7d62340c94772e9a2
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 09:34:58 2021 +0200

    pdfsig: Add a way to list certificate nicknames

    Otherwise it may be a bit hard to figure out what needs to be
    passed to
    the -nick function when signing

 utils/pdfsig.1  |  6 ++++++
 utils/pdfsig.cc | 36 +++++++++++++++++++++++++++++++++++-
 2 files changed, 41 insertions(+), 1 deletion(-)

commit b7021c2f409af1537b653488a3cbc2b01476b8ce
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 16 00:03:41 2021 +0200

    Update (C)

 poppler/UTF.cc | 2 +-
 poppler/UTF.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit b10e715b6a12d63922e428512d2d14682fd1cefc
Author: Adrian Johnson <ajohnson@redneon.com>
Date:   Thu Sep 16 06:59:14 2021 +0930

    Ignore custom metadata that is not a string

 utils/pdfinfo.cc | 32 +++++++++++++++++---------------
 1 file changed, 17 insertions(+), 15 deletions(-)

commit 2bcf030e294cddf47abb63d53944b5e932848917
Author: Adrian Johnson <ajohnson@redneon.com>
Date:   Wed Sep 15 22:31:10 2021 +0930

    pdfinfo: Add -custom option to print custom metadata

 poppler/UTF.cc   | 436
 +++++++++----------------------------------------------
 poppler/UTF.h    |  10 ++
 utils/pdfinfo.1  |   3 +
 utils/pdfinfo.cc |  68 +++++++++
 4 files changed, 148 insertions(+), 369 deletions(-)

commit 904af9ab0c32309e0ccb845837180c5c4afba0ff
Author: Albert Astals Cid <aacid@kde.org>
Date:   Wed Sep 15 00:36:05 2021 +0200

    Properly scale the default stamps to the bbox we want

 poppler/Annot.cc                             | 66
 +++++++++++++++++++++-------
 poppler/annot_stamp_approved.h               |  4 ++
 poppler/annot_stamp_as_is.h                  |  4 ++
 poppler/annot_stamp_confidential.h           |  4 ++
 poppler/annot_stamp_departmental.h           |  4 ++
 poppler/annot_stamp_draft.h                  |  4 ++
 poppler/annot_stamp_experimental.h           |  4 ++
 poppler/annot_stamp_expired.h                |  4 ++
 poppler/annot_stamp_final.h                  |  4 ++
 poppler/annot_stamp_for_comment.h            |  4 ++
 poppler/annot_stamp_for_public_release.h     |  4 ++
 poppler/annot_stamp_not_approved.h           |  4 ++
 poppler/annot_stamp_not_for_public_release.h |  4 ++
 poppler/annot_stamp_sold.h                   |  4 ++
 poppler/annot_stamp_top_secret.h             |  4 ++
 15 files changed, 107 insertions(+), 15 deletions(-)

commit 5cd0e95e19ec3ba031a65dda618f8f068304ee01
Author: Mahmoud Khalil <mahmoudkhalil11@gmail.com>
Date:   Wed Jun 9 21:47:17 2021 +0200

    Add default appearance for the well known stamp names

    Adds support for the standard annotations icon like Approved, Draft,
    Experimental, etc.

    Here's what has been done, in order to generate the AP streams:

     * I used inkscape to modify Okular's stamps.svg file in order to
     extract each icon
     * Used cairosvg to convert the icon into a PDF file
     * Used qpdf to extract the uncompressed stream of the AP and embed
     that into the new .h files

 poppler/Annot.cc                             |  89 ++++-
 poppler/Annot.h                              |   3 +-
 poppler/annot_stamp_approved.h               | 339 +++++++++++++++++++
 poppler/annot_stamp_as_is.h                  | 130 ++++++++
 poppler/annot_stamp_confidential.h           | 188 +++++++++++
 poppler/annot_stamp_departmental.h           | 466
 +++++++++++++++++++++++++++
 poppler/annot_stamp_draft.h                  | 135 ++++++++
 poppler/annot_stamp_experimental.h           | 384 ++++++++++++++++++++++
 poppler/annot_stamp_expired.h                | 243 ++++++++++++++
 poppler/annot_stamp_final.h                  | 116 +++++++
 poppler/annot_stamp_for_comment.h            | 223 +++++++++++++
 poppler/annot_stamp_for_public_release.h     | 299 +++++++++++++++++
 poppler/annot_stamp_not_approved.h           | 394 ++++++++++++++++++++++
 poppler/annot_stamp_not_for_public_release.h | 333 +++++++++++++++++++
 poppler/annot_stamp_sold.h                   | 113 +++++++
 poppler/annot_stamp_top_secret.h             | 359 +++++++++++++++++++++
 16 files changed, 3807 insertions(+), 7 deletions(-)

commit b151180cd5a30b19a2d7a81e67c1be418facd4fb
Author: Albert Astals Cid <aacid@kde.org>
Date:   Mon Sep 13 23:22:52 2021 +0200

    Update (C)

 goo/gmem.h | 1 +
 1 file changed, 1 insertion(+)

commit 247119e3db4a19d57000f15d350165343b0e9092
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Mon Sep 13 22:52:50 2021 +0200

    greallocn(checkoverflow = true, free_p = true): if memory allocation
    fails, free the previous pointer to avoid memory leak

 goo/gmem.h | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 2549552043acf0a98f64360853ce37e6e045c35a
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Mon Sep 13 15:03:45 2021 +0200

    Splash::gouraudTriangleShadedFill(): relax assertion threshold

    On the reproducer file of
    https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=38626, the 1e-9
    threshold is hit. Relaxing it to 1e-7 avoids the assertion.

 splash/Splash.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a1901ee99bf46beac43d129bb3f6ad2f9ed758af
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Sep 12 22:29:40 2021 +0200

    Misc annotation stamp improvements

    Mark a few variables/functions as const
    Remove unused function from AnnotStampImageHelper.h
    Remove unneded GooString from AnnotStamp::generateStampAppearance
    Set pointer to null after delete in AnnotStamp::clearCustomImage
    only invalidate appearance in AnnotStamp::clearCustomImage if we
    did something
    Add since markers to the new public API

 poppler/Annot.cc                | 16 ++++++++--------
 poppler/Annot.h                 |  4 ++--
 poppler/AnnotStampImageHelper.h |  5 ++---
 qt5/src/poppler-annotation.cc   | 10 +++++-----
 qt5/src/poppler-annotation.h    |  8 ++++++++
 qt6/src/poppler-annotation.cc   | 10 +++++-----
 qt6/src/poppler-annotation.h    |  8 ++++++++
 7 files changed, 38 insertions(+), 23 deletions(-)

commit 3fa04293eb7005526c762ddab28e020fd2808aca
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Sep 12 22:17:45 2021 +0200

    Update (C)

 poppler/Annot.cc                     | 1 +
 poppler/Annot.h                      | 1 +
 qt5/src/poppler-annotation-private.h | 1 +
 qt5/src/poppler-annotation.cc        | 1 +
 qt5/src/poppler-annotation.h         | 1 +
 qt6/src/poppler-annotation-private.h | 1 +
 qt6/src/poppler-annotation.cc        | 1 +
 qt6/src/poppler-annotation.h         | 1 +
 8 files changed, 8 insertions(+)

commit 3ad10c30433f19da65f638326336865504fb972a
Author: Mahmoud Khalil <mahmoudkhalil11@gmail.com>
Date:   Sun Sep 12 20:14:24 2021 +0000

    Improve support for custom stamp annotations

    This commit improves Poppler support for custom stamp
    annotations, by adding a new class called AnnotStampImageHelper in
    Poppler core.

    The new class takes image data and create an Image
    XObject in the document, the AnnotStamp class has been modified to
    support the new helper class and to reference the created XObject.

    This new implementation has been exposed in the qt5 wrapper as well
    as the
    qt6 one, in which the extraction of the QImage data has been handled.

    A new API for preserving the annotation AP stream has been exposed
    using
    the qt wrapper as well, so that users are able to temporarily
    store it.

 CMakeLists.txt                       |   2 +
 poppler/Annot.cc                     | 127 +++++++++++++++++++---
 poppler/Annot.h                      |  13 ++-
 poppler/AnnotStampImageHelper.cc     |  77 +++++++++++++
 poppler/AnnotStampImageHelper.h      |  69 ++++++++++++
 qt5/src/poppler-annotation-private.h |  12 +++
 qt5/src/poppler-annotation.cc        | 204
 +++++++++++++++++++++++++++++++++++
 qt5/src/poppler-annotation.h         |  41 +++++++
 qt6/src/poppler-annotation-private.h |  12 +++
 qt6/src/poppler-annotation.cc        | 204
 +++++++++++++++++++++++++++++++++++
 qt6/src/poppler-annotation.h         |  41 +++++++
 11 files changed, 789 insertions(+), 13 deletions(-)

commit 736337fdab52ba77e1877347adff595136f74d73
Author: Thomas Huxhorn <thomas.huxhorn@web.de>
Date:   Sun Aug 29 12:18:57 2021 +0200

    save the trouble of remembering to delete the pointer

 qt5/src/poppler-page.cc | 11 ++++-------
 qt6/src/poppler-page.cc | 11 ++++-------
 2 files changed, 8 insertions(+), 14 deletions(-)

commit f70e352429e3b565262251b1150e77e8638bed6c
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 2 00:04:17 2021 +0200

    21.09.0

 CMakeLists.txt   |  4 ++--
 NEWS             | 12 ++++++++++++
 cpp/Doxyfile     |  2 +-
 qt5/src/Doxyfile |  2 +-
 qt6/src/Doxyfile |  2 +-
 5 files changed, 17 insertions(+), 5 deletions(-)

commit 3cbd833a560eaa8f2d284c3de2033247777b2e6a
Author: Albert Astals Cid <aacid@kde.org>
Date:   Tue Aug 31 00:15:51 2021 +0200

    Remove unused SplashPath::copy

 splash/SplashPath.cc | 18 ------------------
 splash/SplashPath.h  |  5 -----
 2 files changed, 23 deletions(-)

commit f8bcfde24f52e66dd98b8ae62057742bd3add35e
Author: Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>
Date:   Tue Jul 13 15:16:31 2021 +0100

    cmake: correctly forward user-provided flags to try_compile()

    Poppler overrides the user-provided CMAKE_{C,CXX}_FLAGS and appends
    them
    to the per-configuration variables instead. This behaviour currently
    causes cross-compilation checks to fail since a CMake issue means
    these
    these per-configuration flags are no passed to try_compile() commands.
    In my case the flags specified in the toolchain file (as part of
    CMAKE_{C,CXX}_FLAGS_INIT) are absolutely required to compile
    successfully
    since a missing `-mabi=/-march=` flag will result in a linker error
    due to
    trying to link incompatible libraries. If
    CMAKE_TRY_COMPILE_CONFIGURATION
    is empty CMake will no propagate the per-configuration flags to
    try_compile() so we have to to set the value explicitly.

    This is an upstream CMake issue:
    See https://gitlab.kitware.com/cmake/cmake/-/issues/22414 and
    https://gitlab.kitware.com/cmake/cmake/-/issues/19512.

 CMakeLists.txt | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit 53ecbfc9af7a490ad49353b1e2b5011a66c0f100
Author: Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>
Date:   Tue Jul 13 15:04:36 2021 +0100

    Always append to CMAKE_{C,CXX}_FLAGS_${CMAKE_BUILD_TYPE}

    Currently the user/toolchain-provided CMAKE_{C,CXX}_FLAGS can be lost
    if the user selects a CMAKE_BUILD_TYPE that is not handled by
    PopplerMacros.cmake. To avoid this problem use a foreach() loop over
    all known build types plus the current CMAKE_BUILD_TYPE that appends
    to the per-configuration flags.

 cmake/modules/PopplerMacros.cmake | 87
 +++++++++++++++++++++++----------------
 1 file changed, 52 insertions(+), 35 deletions(-)

commit a1678b91e2d1b1b38ff38897bc1540f2b57a7ebc
Author: Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>
Date:   Mon Jul 12 17:44:07 2021 +0100

    Call cmake_minium_required() before project()

    See CMake documentation:
    ```
    Call the cmake_minimum_required() command at the beginning of the
    top-level
    CMakeLists.txt file even before calling the project() command. It is
    important to establish version and policy settings before invoking
    other
    commands whose behavior they may affect. See also policy CMP0000.
    ```

 CMakeLists.txt | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit e8003bd8cde3b4b6b2954ad7370d3ece71607673
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Aug 29 22:51:06 2021 +0200

    Update (C)

 goo/JpegWriter.cc          | 1 +
 poppler/StdinCachedFile.cc | 1 +
 poppler/TextOutputDev.cc   | 1 +
 utils/pdftocairo.cc        | 1 +
 utils/pdftoppm.cc          | 1 +
 5 files changed, 5 insertions(+)

commit e2183097ad35038bb7266f181578020edf7cd08d
Author: Peter Williams <peter@newton.cx>
Date:   Wed Aug 18 10:39:21 2021 -0400

    Fix up setmode calls

    To compile and work correctly on both Cygwin and MSVC, we should
    always
    call the function `_setmode` and check for either `_WIN32` or
    `__CYGWIN__` being defined. This fixes the MSVC build and corrects
    some
    behavior handling output to stdout on Cygwin.

 poppler/StdinCachedFile.cc |  8 ++++----
 poppler/TextOutputDev.cc   |  8 ++++----
 utils/pdftocairo.cc        | 14 ++++++++++----
 utils/pdftoppm.cc          |  8 ++++----
 4 files changed, 22 insertions(+), 16 deletions(-)

commit db9aa98fb14f3e88f8ab9fd6fc5043a45ccba3fd
Author: Peter Williams <peter@newton.cx>
Date:   Wed Aug 18 10:38:11 2021 -0400

    Map str{n,}casecmp to supported names on MSVC

 config.h.cmake | 2 ++
 1 file changed, 2 insertions(+)

commit e5cfc6977f716c4d42df4598cdd958fd865ed1a0
Author: Peter Williams <peter@newton.cx>
Date:   Wed Aug 18 10:36:54 2021 -0400

    JpegWriter: include poppler/Error.h sooner

    This is needed to avoid a symbol redefinition error on Windows/MSVC.

 goo/JpegWriter.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6aff5bbbfe06c70314ba7ea936d98aed0e48331f
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sat Aug 21 21:46:00 2021 +0200

    CI: Enable google-explicit-constructor

    I was doing some refactoring before and was hit by one of the
    constructors being magically called when i didn't want that.

    Since we don't really on it (was just used in some of the explicit
    type
    conversions) I think it makes sense to enable

    And 2 small qt6 clang-tidy fixes because we don't have qt6 on
    the clang-tidy CI yet

    There's 2 potentially source incompatible changes in the qt frontend,
    but i really really hope noone was using the constructors that way

 .gitlab-ci.yml                               |  2 +-
 cpp/poppler-destination.h                    |  4 +-
 cpp/poppler-document.h                       |  4 +-
 cpp/poppler-embedded-file-private.h          |  4 +-
 cpp/poppler-embedded-file.h                  |  3 +-
 cpp/poppler-font-private.h                   |  3 +-
 cpp/poppler-font.h                           |  3 +-
 cpp/poppler-global.cpp                       | 12 +++---
 cpp/poppler-global.h                         |  5 ++-
 cpp/poppler-image.cpp                        |  4 +-
 cpp/poppler-page-transition.cpp              |  4 +-
 cpp/poppler-page-transition.h                |  3 +-
 cpp/poppler-page.h                           |  4 +-
 fofi/FoFiIdentifier.cc                       |  4 +-
 goo/JpegWriter.h                             |  4 +-
 goo/NetPBMWriter.h                           |  4 +-
 goo/PNGWriter.h                              |  4 +-
 goo/TiffWriter.h                             |  4 +-
 goo/gdir.h                                   |  4 +-
 goo/gfile.h                                  |  4 +-
 poppler/Annot.h                              | 38 +++++++++---------
 poppler/Array.h                              |  4 +-
 poppler/CairoFontEngine.cc                   | 14 ++++---
 poppler/CairoFontEngine.h                    |  4 +-
 poppler/Catalog.h                            |  2 +-
 poppler/CharCodeToUnicode.h                  |  4 +-
 poppler/Dict.h                               |  6 +--
 poppler/FileSpec.h                           |  6 +--
 poppler/FlateEncoder.h                       |  2 +-
 poppler/FontInfo.h                           |  4 +-
 poppler/Function.h                           | 12 +++---
 poppler/Gfx.cc                               |  2 +-
 poppler/GfxState.cc                          |  2 +-
 poppler/GfxState.h                           | 24 +++++------
 poppler/GlobalParams.h                       |  6 +--
 poppler/Hints.cc                             |  4 +-
 poppler/JArithmeticDecoder.h                 |  4 +-
 poppler/JBIG2Stream.cc                       |  4 +-
 poppler/JPEG2000Stream.h                     |  2 +-
 poppler/JSInfo.h                             |  4 +-
 poppler/Linearization.h                      |  4 +-
 poppler/Link.h                               | 30 +++++++-------
 poppler/MarkedContentOutputDev.h             |  4 +-
 poppler/Movie.h                              |  4 +-
 poppler/OptionalContent.h                    |  6 +--
 poppler/PDFDoc.h                             |  4 +-
 poppler/PDFDocFactory.h                      |  4 +-
 poppler/PageTransition.h                     |  4 +-
 poppler/PopplerCache.h                       |  4 +-
 poppler/PreScanOutputDev.h                   |  2 +-
 poppler/Rendition.h                          |  4 +-
 poppler/SecurityHandler.h                    |  4 +-
 poppler/Sound.h                              |  4 +-
 poppler/SplashOutputDev.cc                   |  2 +-
 poppler/Stream.cc                            |  2 +-
 poppler/Stream.h                             | 24 +++++------
 poppler/StructElement.h                      |  6 +--
 poppler/TextOutputDev.cc                     |  4 +-
 poppler/TextOutputDev.h                      |  8 ++--
 poppler/UnicodeMap.h                         |  4 +-
 poppler/ViewerPreferences.h                  |  3 +-
 poppler/XRef.h                               |  6 +--
 qt5/demos/abstractinfodock.h                 |  3 +-
 qt5/demos/embeddedfiles.h                    |  3 +-
 qt5/demos/fonts.h                            |  3 +-
 qt5/demos/info.h                             |  3 +-
 qt5/demos/metadata.h                         |  3 +-
 qt5/demos/navigationtoolbar.h                |  4 +-
 qt5/demos/optcontent.h                       |  3 +-
 qt5/demos/pageview.h                         |  3 +-
 qt5/demos/permissions.h                      |  3 +-
 qt5/demos/thumbnails.h                       |  3 +-
 qt5/demos/toc.h                              |  4 +-
 qt5/demos/viewer.h                           |  3 +-
 qt5/src/QPainterOutputDev.h                  |  4 +-
 qt5/src/poppler-annotation.h                 | 60
 ++++++++++++++--------------
 qt5/src/poppler-embeddedfile-private.h       |  4 +-
 qt5/src/poppler-form.cc                      |  4 +-
 qt5/src/poppler-form.h                       | 10 ++---
 qt5/src/poppler-link-extractor-private.h     |  3 +-
 qt5/src/poppler-link-private.h               |  4 +-
 qt5/src/poppler-link.cc                      | 14 +++----
 qt5/src/poppler-link.h                       | 14 +++----
 qt5/src/poppler-media.cc                     |  4 +-
 qt5/src/poppler-media.h                      |  4 +-
 qt5/src/poppler-optcontent-private.h         |  6 +--
 qt5/src/poppler-optcontent.h                 |  4 +-
 qt5/src/poppler-page-transition.cc           |  4 +-
 qt5/src/poppler-page-transition.h            |  4 +-
 qt5/src/poppler-private.h                    |  4 +-
 qt5/src/poppler-qiodeviceoutstream-private.h |  3 +-
 qt5/src/poppler-qt5.h                        | 20 +++++-----
 qt5/tests/check_actualtext.cpp               |  2 +-
 qt5/tests/check_annotations.cpp              |  2 +-
 qt5/tests/check_attachments.cpp              |  2 +-
 qt5/tests/check_dateConversion.cpp           |  2 +-
 qt5/tests/check_fonts.cpp                    |  2 +-
 qt5/tests/check_forms.cpp                    |  4 +-
 qt5/tests/check_goostring.cpp                |  2 +-
 qt5/tests/check_internal_outline.cpp         |  2 +-
 qt5/tests/check_lexer.cpp                    |  2 +-
 qt5/tests/check_links.cpp                    |  2 +-
 qt5/tests/check_metadata.cpp                 |  2 +-
 qt5/tests/check_object.cpp                   |  2 +-
 qt5/tests/check_optcontent.cpp               |  2 +-
 qt5/tests/check_outline.cpp                  |  2 +-
 qt5/tests/check_pagelabelinfo.cpp            |  2 +-
 qt5/tests/check_pagelayout.cpp               |  2 +-
 qt5/tests/check_pagemode.cpp                 |  2 +-
 qt5/tests/check_password.cpp                 |  2 +-
 qt5/tests/check_permissions.cpp              |  2 +-
 qt5/tests/check_search.cpp                   |  2 +-
 qt5/tests/check_strings.cpp                  |  2 +-
 qt5/tests/check_stroke_opacity.cpp           |  2 +-
 qt5/tests/check_utf_conversion.cpp           |  2 +-
 qt5/tests/stress-threads-qt5.cpp             |  2 +-
 qt5/tests/test-password-qt5.cpp              |  2 +-
 qt6/demos/abstractinfodock.h                 |  3 +-
 qt6/demos/embeddedfiles.h                    |  3 +-
 qt6/demos/fonts.h                            |  3 +-
 qt6/demos/info.h                             |  3 +-
 qt6/demos/metadata.h                         |  3 +-
 qt6/demos/navigationtoolbar.h                |  4 +-
 qt6/demos/optcontent.h                       |  3 +-
 qt6/demos/pageview.h                         |  3 +-
 qt6/demos/permissions.h                      |  3 +-
 qt6/demos/thumbnails.h                       |  3 +-
 qt6/demos/toc.h                              |  4 +-
 qt6/demos/viewer.h                           |  3 +-
 qt6/src/QPainterOutputDev.h                  |  4 +-
 qt6/src/poppler-annotation.h                 | 36 ++++++++---------
 qt6/src/poppler-embeddedfile-private.h       |  4 +-
 qt6/src/poppler-form.cc                      |  4 +-
 qt6/src/poppler-form.h                       | 10 ++---
 qt6/src/poppler-link-extractor-private.h     |  3 +-
 qt6/src/poppler-link-private.h               |  4 +-
 qt6/src/poppler-link.cc                      | 12 +++---
 qt6/src/poppler-link.h                       | 14 +++----
 qt6/src/poppler-media.cc                     |  4 +-
 qt6/src/poppler-media.h                      |  4 +-
 qt6/src/poppler-optcontent-private.h         |  6 +--
 qt6/src/poppler-optcontent.h                 |  4 +-
 qt6/src/poppler-page-transition.cc           |  4 +-
 qt6/src/poppler-page-transition.h            |  4 +-
 qt6/src/poppler-private.h                    |  4 +-
 qt6/src/poppler-qiodeviceoutstream-private.h |  3 +-
 qt6/src/poppler-qt6.h                        | 20 +++++-----
 qt6/tests/check_actualtext.cpp               |  2 +-
 qt6/tests/check_annotations.cpp              |  2 +-
 qt6/tests/check_attachments.cpp              |  2 +-
 qt6/tests/check_dateConversion.cpp           |  2 +-
 qt6/tests/check_fonts.cpp                    |  2 +-
 qt6/tests/check_forms.cpp                    |  4 +-
 qt6/tests/check_goostring.cpp                |  2 +-
 qt6/tests/check_internal_outline.cpp         |  2 +-
 qt6/tests/check_lexer.cpp                    |  2 +-
 qt6/tests/check_links.cpp                    |  2 +-
 qt6/tests/check_metadata.cpp                 |  2 +-
 qt6/tests/check_object.cpp                   |  2 +-
 qt6/tests/check_optcontent.cpp               |  2 +-
 qt6/tests/check_outline.cpp                  |  2 +-
 qt6/tests/check_pagelabelinfo.cpp            |  2 +-
 qt6/tests/check_pagelayout.cpp               |  2 +-
 qt6/tests/check_pagemode.cpp                 |  2 +-
 qt6/tests/check_password.cpp                 |  2 +-
 qt6/tests/check_permissions.cpp              |  2 +-
 qt6/tests/check_search.cpp                   |  2 +-
 qt6/tests/check_strings.cpp                  |  2 +-
 qt6/tests/check_stroke_opacity.cpp           |  2 +-
 qt6/tests/check_utf_conversion.cpp           |  2 +-
 qt6/tests/stress-threads-qt6.cpp             |  2 +-
 qt6/tests/test-password-qt6.cpp              |  2 +-
 splash/SplashClip.h                          |  2 +-
 splash/SplashPath.h                          |  2 +-
 splash/SplashPattern.h                       |  2 +-
 splash/SplashScreen.h                        |  4 +-
 splash/SplashState.h                         |  2 +-
 utils/HtmlOutputDev.h                        |  4 +-
 178 files changed, 456 insertions(+), 422 deletions(-)

commit 646a1519d965895a4126b4e5f6fee2102d9c38a6
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Aug 27 15:45:27 2021 +0200

    CI: Include qt6 on the clang-tidy and clazy builders

 .gitlab-ci.yml            | 12 ++++++++++--
 qt6/src/poppler-link.cc   |  2 +-
 qt6/src/poppler-page.cc   |  2 +-
 qt6/src/poppler-private.h |  1 -
 4 files changed, 12 insertions(+), 5 deletions(-)

commit 875be6054ff85261e254268a77cf47ebb9c539e9
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Aug 27 13:33:05 2021 +0200

    SplashClip: we don't need to keep the paths around

    Since we never used them for anything ^_^

    Saves yet another 40% in file from issue #1126

 splash/Splash.cc             |  6 +++---
 splash/SplashClip.cc         | 45
 ++++++++++++--------------------------------
 splash/SplashClip.h          |  1 -
 splash/SplashXPath.cc        |  8 --------
 splash/SplashXPath.h         |  4 ----
 splash/SplashXPathScanner.cc | 20 ++++++++++----------
 splash/SplashXPathScanner.h  |  4 ++--
 7 files changed, 27 insertions(+), 61 deletions(-)

commit 849e4bbbdcffe8c7ec4fe319f7cf1fbbd8c84949
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Aug 27 02:12:27 2021 +0200

    Splash: huge speed improvement in save/restore heavy files

    27 secs to 2 secs in file from issue #1126 in my computer

    When copying the SplashClip we don't need to copy the scanners, we can
    just share the same pointers since once created the scanners can't
    change.

 splash/SplashClip.cc         | 13 +++----------
 splash/SplashClip.h          |  5 ++++-
 splash/SplashXPathScanner.cc | 11 -----------
 splash/SplashXPathScanner.h  |  6 ------
 4 files changed, 7 insertions(+), 28 deletions(-)

commit 0f78fc2fc29463af7340fa5c7efac6f82dbba26b
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Aug 27 02:02:52 2021 +0200

    Every function in SplashXPathScanner is const

 splash/SplashXPathScanner.cc | 12 ++++++------
 splash/SplashXPathScanner.h  | 16 ++++++++--------
 2 files changed, 14 insertions(+), 14 deletions(-)

commit d6c4d5d98f016d552c54bc86c42883d660adb70c
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Aug 27 02:01:05 2021 +0200

    SplashXPathScanner: Don't keep the SplashXPath around

    we don't need it

 splash/SplashXPathScanner.cc | 8 +++-----
 splash/SplashXPathScanner.h  | 5 ++---
 2 files changed, 5 insertions(+), 8 deletions(-)

commit f39941016fcd5af3c510112e9224c2c19c504ef4
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Aug 27 00:57:49 2021 +0200

    Update (C)

 poppler/SplashOutputDev.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f51d2519590369107c27d0f3a078819e1df889fb
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Wed Aug 25 21:52:26 2021 +0200

    SplashOutputDev::drawImage(): Fix abort() in failed gmallocn

    Fail following crash on reproducer test case of
    https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=27810

    Crash stack on ``pdftoppm -png
    clusterfuzz-testcase-minimized-gdal_fuzzer-5753490332450816.fuzz`` is:
    ```
    0  __GI_raise (sig=sig@entry=6) at
    ../sysdeps/unix/sysv/linux/raise.c:50
    1  0x00007ffff7746859 in __GI_abort () at abort.c:79
    2  0x00007ffff7cff44e in gmallocn (count=count@entry=1073741824,
    size=size@entry=3, checkoverflow=checkoverflow@entry=false) at
    /home/even/poppler/goo/gmem.h:116
    3  0x00007ffff7e584d4 in SplashOutputDev::drawImage
    (this=0x5555555b6b00, state=0x5555555bb360, ref=<optimized
    out>, str=0x5555555dc6e0, width=19, height=<optimized out>,
    colorMap=0x7fffffffd2c0,
       interpolate=false, maskColors=0x0, inlineImg=false) at
       /home/even/poppler/poppler/SplashOutputDev.cc:3286
    4  0x00007ffff7d764a6 in Gfx::doImage
    (this=this@entry=0x5555555b9460, ref=ref@entry=0x7fffffffd820,
    str=<optimized out>, inlineImg=inlineImg@entry=false) at
    /home/even/poppler/poppler/Gfx.cc:4563
    5  0x00007ffff7d773ca in Gfx::opXObject (this=0x5555555b9460,
    args=<optimized out>, numArgs=<optimized out>) at
    /home/even/poppler/poppler/Gfx.cc:4105
    6  0x00007ffff7d70dc7 in Gfx::go (this=this@entry=0x5555555b9460,
    topLevel=topLevel@entry=true) at /home/even/poppler/poppler/Gfx.cc:681
      0x00007ffff7d711f5 in Gfx::display (this=this@entry=0x5555555b9460,
      obj=obj@entry=0x7fffffffdc00, topLevel=topLevel@entry=true)
      at /home/even/poppler/poppler/Gfx.cc:642
    8  0x00007ffff7dd2758 in Page::displaySlice (this=0x5555555b5ff0,
    out=0x5555555b6b00, hDPI=<optimized out>, vDPI=<optimized out>,
    rotate=<optimized out>, useMediaBox=<optimized out>,
       crop=<optimized out>, sliceX=<optimized out>, sliceY=0,
       sliceW=230, sliceH=230, printing=false, abortCheckCbk=0x0,
       abortCheckCbkData=0x0,
       annotDisplayDecideCbk=0x55555555a110 <<lambda(Annot*,
       void*)>::_FUN(Annot *, void *)>, annotDisplayDecideCbkData=0x0,
       copyXRef=false) at /home/even/poppler/poppler/Page.cc:576
    9  0x000055555555a633 in savePageSlice (doc=<optimized out>,
    splashOut=0x5555555b6b00, pg=1, x=<optimized out>, y=<optimized out>,
    w=<optimized out>, h=<optimized out>, pg_w=<optimized out>,
       pg_h=<optimized out>, ppmFile=0x0) at
       /home/even/poppler/utils/pdftoppm.cc:288
    10 0x0000555555559232 in main (argc=<optimized out>, argv=<optimized
    out>) at /home/even/poppler/utils/pdftoppm.cc:684
    ```

 poppler/SplashOutputDev.cc | 70
 ++++++++++++++++++++++++++--------------------
 1 file changed, 39 insertions(+), 31 deletions(-)

commit c92e079ea2954abc6b7005a802ea464ccfae9581
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Aug 26 01:10:26 2021 +0200
