commit 481ee336d15bdf6b2b6084dddcd1617b032d2cd5
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Mar 3 12:16:11 2024 +0100

    poppler 24.03.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 23a3e5144e9fe5329b99b26879856e9ca3db769d
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Mar 3 15:36:15 2024 +0100

    Fix srcdir=builddir build

    cmake will create folders which so we need to ignore those

 utils/po/CMakeLists.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 840fc7637d93d40e09c7792086c96ba94811fb1f
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Mar 1 10:27:55 2024 +0100

    Fix translations on non glibc platforms

 utils/CMakeLists.txt | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit 0ad01ca51e6b6e061ba85db5b906dfc299dba8e1
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Feb 22 09:19:57 2024 +0100

    Update (C)

 poppler/XRef.cc | 1 +
 1 file changed, 1 insertion(+)

commit a9266633d203432234ab2dab621f61374eed2d66
Author: Nelson Benítez León <nbenitezl@gmail.com>
Date:   Wed Feb 21 19:56:46 2024 +0000

    Fix regression on encrypted files being repaired

    Some encrypted files which need repairing (see
    links below) failed to open due to a regression
    introduced in commit b3e86dbdba where an 'if
    condition' was added that's hit by encrypted files
    which need repairing.

    The removal of this 'if condition' does not affect
    the original buggy file that commit b3e86dbdba
    targeted[1].

    This commit also adds Qt5 and Qt6 tests for opening
    an encrypted pdf file affected by this issue.

    Fixes #1447
    Fixes https://gitlab.gnome.org/GNOME/evince/-/issues/1889

    Regression issue:
    https://bugs.freedesktop.org/show_bug.cgi?id=14303

    [1] which can be found in this duplicate:
    https://bugs.freedesktop.org/show_bug.cgi?id=14399

 poppler/XRef.cc              |  2 +-
 qt5/tests/check_password.cpp | 13 +++++++++++++
 qt6/tests/check_password.cpp | 10 ++++++++++
 3 files changed, 24 insertions(+), 1 deletion(-)

commit 87fab6144828cf52fbefb484ef7024c06ceaf6b1
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Feb 22 00:23:16 2024 +0100

    Update (C)

 poppler/Gfx.cc             | 2 +-
 poppler/SplashOutputDev.cc | 2 +-
 poppler/Stream.cc          | 2 +-
 splash/Splash.cc           | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 3d8dac5ec9f1cdedada07c4c2fc02e43d5e14f9e
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Tue Feb 20 20:44:04 2024 +0100

    Gfx::doImage(): avoid integer overflow if width * height > INT_MAX

    Related to https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=66523

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

commit 8d66d756dad4fbde0cd1b8b0f1ce8b08caa7a19d
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Tue Feb 20 20:43:11 2024 +0100

    SplashOutputDev::drawImageMask(): early break if getLine() fails

    Related to https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=66523

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

commit 6a4d5323efd9651ab2ee5a0f921bdeb55fa61b0b
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Tue Feb 20 20:42:28 2024 +0100

    ImageStream::getLine(): check that imgLine is not null

    Related to https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=66523

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

commit 30acc0bbd2c773b2709aa9138e94729439fb3025
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Tue Feb 20 20:41:51 2024 +0100

    Splash.cpp scaleXXXX() functions: use gmalloc[n]_checkoverflow to
    avoid abort() on large memory allocations

    Related to https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=66523

 splash/Splash.cc | 151
 ++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 file changed, 132 insertions(+), 19 deletions(-)

commit 1c7c2bae76d684bc4c8cd27f203b76009f49a848
Author: Even Rouault <even.rouault@spatialys.com>
Date:   Tue Feb 20 21:14:50 2024 +0100

    Fix read-heap-buffer-overflow in Splash::blitTransparent() in
    splashModeMono8 case

    Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=64471

    ```
    $ utils/pdftoppm
    clusterfuzz-testcase-minimized-gdal_fuzzer-6127122829410304
    [...]
    =================================================================
    ==1758602==ERROR: AddressSanitizer: heap-buffer-overflow on
    address 0x602000024cd5 at pc 0x7fd5850e977d bp 0x7ffe0e007430 sp
    0x7ffe0e007428
    READ of size 1 at 0x602000024cd5 thread T0
        #0 0x7fd5850e977c in Splash::blitTransparent(SplashBitmap*,
        int, int, int, int, int, int)
        /home/even/poppler/splash/Splash.cc:5778:24
        #1 0x7fd58505e19d in
        SplashOutputDev::beginTransparencyGroup(GfxState*,
        double const*, GfxColorSpace*, bool, bool, bool)
        /home/even/poppler/poppler/SplashOutputDev.cc:3998:17
        #2 0x7fd5850451c3 in
        SplashOutputDev::setSoftMaskFromImageMask(GfxState*,
        Object*, Stream*, int, int, bool, bool, double*)
        /home/even/poppler/poppler/SplashOutputDev.cc:2692:5
        #3 0x7fd584c3f6a7 in Gfx::doPatternImageMask(Object*, Stream*,
        int, int, bool, bool) /home/even/poppler/poppler/Gfx.cc:1964:10
        #4 0x7fd584c5cc26 in Gfx::doImage(Object*, Stream*, bool)
        /home/even/poppler/poppler/Gfx.cc:4304:17
        #5 0x7fd584c1827a in Gfx::opBeginImage(Object*, int)
        /home/even/poppler/poppler/Gfx.cc:4900:9
        #6 0x7fd584c32abe in Gfx::execOp(Object*, Object*, int)
        /home/even/poppler/poppler/Gfx.cc:811:5
        #7 0x7fd584c316ef in Gfx::go(bool)
        /home/even/poppler/poppler/Gfx.cc:686:13
        #8 0x7fd584c30f76 in Gfx::display(Object*, bool)
        /home/even/poppler/poppler/Gfx.cc:647:5
        #9 0x7fd58506713d in SplashOutputDev::tilingPatternFill(GfxState*,
        Gfx*, Catalog*, GfxTilingPattern*, double
        const*, int, int, int, int, double, double)
        /home/even/poppler/poppler/SplashOutputDev.cc:4424:10
        #10 0x7fd584c3b41b in Gfx::doTilingPatternFill(GfxTilingPattern*,
        bool, bool, bool) /home/even/poppler/poppler/Gfx.cc:2176:53
        #11 0x7fd584c36188 in Gfx::doPatternFill(bool)
        /home/even/poppler/poppler/Gfx.cc:1895:9
        #12 0x7fd584c16d93 in Gfx::opFillStroke(Object*, int)
        /home/even/poppler/poppler/Gfx.cc:1794:17
        #13 0x7fd584c32abe in Gfx::execOp(Object*, Object*, int)
        /home/even/poppler/poppler/Gfx.cc:811:5
        #14 0x7fd584c316ef in Gfx::go(bool)
        /home/even/poppler/poppler/Gfx.cc:686:13
        #15 0x7fd584c30f76 in Gfx::display(Object*, bool)
        /home/even/poppler/poppler/Gfx.cc:647:5
        #16 0x7fd584de61b9 in Page::displaySlice(OutputDev*, double,
        double, int, bool, bool, int, int, int, int, bool, bool
        (*)(void*), void*, bool (*)(Annot*, void*), void*, bool)
        /home/even/poppler/poppler/Page.cc:593:14
        #17 0x7fd584dfd5fc in PDFDoc::displayPageSlice(OutputDev*,
        int, double, double, int, bool, bool, bool, int, int, int, int,
        bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool)
        /home/even/poppler/poppler/PDFDoc.cc:633:24
        #18 0x4cc9c6 in savePageSlice(PDFDoc*, SplashOutputDev*,
        int, int, int, int, int, double, double, char*)
        /home/even/poppler/utils/pdftoppm.cc:293:10
        #19 0x4cb932 in main /home/even/poppler/utils/pdftoppm.cc:695:9
        #20 0x7fd5841ef082 in __libc_start_main
        /build/glibc-wuryBv/glibc-2.31/csu/../csu/libc-start.c:308:16
        #21 0x41d61d in _start
        (/home/even/poppler/build/utils/pdftoppm+0x41d61d)

    0x602000024cd5 is located 1 bytes to the right of 4-byte region
    [0x602000024cd0,0x602000024cd4)
    allocated by thread T0 here:
        #0 0x495d5d in malloc
        (/home/even/poppler/build/utils/pdftoppm+0x495d5d)
        #1 0x7fd5849f1d54 in gmalloc(unsigned long, bool)
        /home/even/poppler/goo/gmem.h:44:19
        #2 0x7fd5849f0ed0 in gmallocn(int, int, bool)
        /home/even/poppler/goo/gmem.h:121:12
        #3 0x7fd584c1384d in gmallocn_checkoverflow(int, int)
        /home/even/poppler/goo/gmem.h:126:12
        #4 0x7fd5850f7ec5 in SplashBitmap::SplashBitmap(int, int, int,
        SplashColorMode, bool, bool, std::vector<GfxSeparationColorSpace*,
        std::allocator<GfxSeparationColorSpace*> > const*)
        /home/even/poppler/splash/SplashBitmap.cc:111:28
        #5 0x7fd585066631 in SplashOutputDev::tilingPatternFill(GfxState*,
        Gfx*, Catalog*, GfxTilingPattern*, double
        const*, int, int, int, int, double, double)
        /home/even/poppler/poppler/SplashOutputDev.cc:4398:18
        #6 0x7fd584c3b41b in Gfx::doTilingPatternFill(GfxTilingPattern*,
        bool, bool, bool) /home/even/poppler/poppler/Gfx.cc:2176:53
        #7 0x7fd584c36188 in Gfx::doPatternFill(bool)
        /home/even/poppler/poppler/Gfx.cc:1895:9
        #8 0x7fd584c16d93 in Gfx::opFillStroke(Object*, int)
        /home/even/poppler/poppler/Gfx.cc:1794:17
        #9 0x7fd584c32abe in Gfx::execOp(Object*, Object*, int)
        /home/even/poppler/poppler/Gfx.cc:811:5
        #10 0x7fd584c316ef in Gfx::go(bool)
        /home/even/poppler/poppler/Gfx.cc:686:13
        #11 0x7fd584c30f76 in Gfx::display(Object*, bool)
        /home/even/poppler/poppler/Gfx.cc:647:5
        #12 0x7fd584de61b9 in Page::displaySlice(OutputDev*, double,
        double, int, bool, bool, int, int, int, int, bool, bool
        (*)(void*), void*, bool (*)(Annot*, void*), void*, bool)
        /home/even/poppler/poppler/Page.cc:593:14
        #13 0x7fd584dfd5fc in PDFDoc::displayPageSlice(OutputDev*,
        int, double, double, int, bool, bool, bool, int, int, int, int,
        bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool)
        /home/even/poppler/poppler/PDFDoc.cc:633:24
        #14 0x4cc9c6 in savePageSlice(PDFDoc*, SplashOutputDev*,
        int, int, int, int, int, double, double, char*)
        /home/even/poppler/utils/pdftoppm.cc:293:10
        #15 0x4cb932 in main /home/even/poppler/utils/pdftoppm.cc:695:9
        #16 0x7fd5841ef082 in __libc_start_main
        /build/glibc-wuryBv/glibc-2.31/csu/../csu/libc-start.c:308:16

    SUMMARY: AddressSanitizer: heap-buffer-overflow
    /home/even/poppler/splash/Splash.cc:5778:24 in
    Splash::blitTransparent(SplashBitmap*, int, int, int, int, int, int)
    ```

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

commit a938d58fb5b7ab43447f972ce238618fe2534ccd
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Feb 18 19:25:43 2024 +0100

    Update (C)

 poppler/Annot.cc    | 2 +-
 poppler/Annot.h     | 1 +
 poppler/DateInfo.cc | 1 +
 poppler/DateInfo.h  | 1 +
 poppler/Form.cc     | 2 +-
 utils/pdfsig.cc     | 2 +-
 6 files changed, 6 insertions(+), 3 deletions(-)

commit a7f1652ebdb78a4757565a91b62294ad7333ec75
Author: Erich E. Hoover <erich.e.hoover@gmail.com>
Date:   Thu Feb 8 11:07:24 2024 -0700

    pdfsig: Sign form signature fields with an appearance

 utils/CMakeLists.txt    |  7 +++++++
 utils/pdfsig.1          |  3 +++
 utils/pdfsig.cc         | 33 ++++++++++++++++++++++++++++++++-
 utils/po/CMakeLists.txt | 26 ++++++++++++++++++++++++++
 utils/po/pdfsig.pot     | 26 ++++++++++++++++++++++++++
 5 files changed, 94 insertions(+), 1 deletion(-)

commit 53b98e8d3c7783b4340e6006e7641fa6b0ffe3ec
Author: Erich E. Hoover <erich.e.hoover@gmail.com>
Date:   Mon Aug 15 10:04:17 2022 -0600

    DateInfo: Add timeToStringWithFormat for using a custom format string

 poppler/DateInfo.cc | 33 +++++++++++++++++++++++++--------
 poppler/DateInfo.h  |  6 ++++++
 2 files changed, 31 insertions(+), 8 deletions(-)

commit 7b189dc13c1e8de7df23326ce5b2ff93b76dc712
Author: Erich E. Hoover <erich.e.hoover@gmail.com>
Date:   Wed Oct 26 11:33:48 2022 -0600

    Form: Allow signDocumentWithAppearance to autocalculate the font size

 poppler/Form.cc | 34 +++++++++++++++++++++++++++++++++-
 1 file changed, 33 insertions(+), 1 deletion(-)

commit 4a278246628850d5b7dc0ee3f6cbc9d38999e85a
Author: Erich E. Hoover <erich.e.hoover@gmail.com>
Date:   Wed Oct 26 11:34:21 2022 -0600

    Annot: Pull out the font size calculator into a separate routine

 poppler/Annot.cc | 54
 +++++++++++++++++++++++++++++++-----------------------
 poppler/Annot.h  |  2 ++
 2 files changed, 33 insertions(+), 23 deletions(-)

commit 4b109c2fdcd1d170d329178dd2f33ae55cc3fef0
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Feb 15 23:28:06 2024 +0100

    Update (C)

 utils/ImageOutputDev.cc | 1 +
 utils/ImageOutputDev.h  | 1 +
 utils/pdfimages.cc      | 1 +
 3 files changed, 3 insertions(+)

commit 90726f1e54c3be924f8a0419fc6fca4657127d89
Author: Sebastian J. Bronner <waschtl@sbronner.com>
Date:   Thu Feb 15 22:27:08 2024 +0000

    Enable pdfimages to print filenames to stdout.

    Add a command line option -print-filenames so that after writing each
    imaage to file, pdfimages will print the filename to stdout. This
    is in
    line with the --batch-print option of scanimage and the
    stream_filelist
    parameter of tesseract. It allows easy parallelization of different
    stages of an image processing pipeline.

 utils/ImageOutputDev.cc | 5 +++++
 utils/ImageOutputDev.h  | 4 ++++
 utils/pdfimages.1       | 3 +++
 utils/pdfimages.cc      | 3 +++
 4 files changed, 15 insertions(+)

commit 2934e3127adaff049224c741ddaeef8de832c6ab
Author: Albert Astals Cid <aacid@kde.org>
Date:   Tue Feb 13 22:59:19 2024 +0100

    Update (C)

 poppler/Gfx.cc | 1 +
 1 file changed, 1 insertion(+)

commit a4da948c19990e299dd336a30d32760ce90b0136
Author: Nelson Benítez León <nbenitezl@gmail.com>
Date:   Tue Feb 13 10:28:22 2024 +0000

    Gfx::doImage: skip drawing image when it has singular matrix

    otherwise it will result in broken output in Cairo backend.

    Splash backend already works fine for this case because
    it checks for singular matrix in Splash::drawImage().

    This commit adds that check early in Gfx::doImage()
    which fixes the Cairo backend and for Splash backend
    means a perf improvement by avoiding lot of color
    computation and image preparation done in
    SplashOutputDev::draw{Image,ImageMask,MaskedImage,softMaskedImage}
    prior to calling Splash::drawImage which is the one
    that checks singular matrix and skips.

    Note: singular matrix case is not mentioned in PDF spec
    but Xpdf and other pdf readers de-facto do as in here
    i.e. skip drawing an image when it has a singular (non
    invertible) matrix.

    Fixes issue #1114

 poppler/Gfx.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 0672a083a5f8e0c5ca53f7cf0dd967ce78b26fd1
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Feb 8 19:00:01 2024 +0100

    Update (C)

 poppler/FileSpec.cc | 1 +
 poppler/FileSpec.h  | 1 +
 utils/pdfdetach.cc  | 3 ++-
 3 files changed, 4 insertions(+), 1 deletion(-)

commit d169ac132d36ba1459000a27cada084e1633859a
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Feb 4 10:31:43 2024 +0100

    Use std::filesystem

 utils/pdfdetach.cc | 40 ++++++++++++++++++++++++----------------
 1 file changed, 24 insertions(+), 16 deletions(-)

commit d8e7a8a9dd4ddd642c35f5fd1538396be2a68aa9
Author: Sune Vuorela <sune@vuorela.dk>
Date:   Fri Jun 30 15:25:14 2023 +0200

    Fix directory traversal in pdfdetach

    A carefully crafted pdf file could lead to writing files in wrong
    places
    of the file system by using pdfdetach.

    Thanks to jwilk for spotting the issue.

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1026908

 poppler/FileSpec.cc |  4 ++--
 poppler/FileSpec.h  |  2 +-
 utils/pdfdetach.cc  | 66
 ++++++++++++++++++++++++++---------------------------
 3 files changed, 35 insertions(+), 37 deletions(-)

commit 6e3824d45d42cb806a28a2df84e4ab6bb3587083
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Feb 8 00:57:02 2024 +0100

    Use an enum for Function getType

 poppler/Function.cc    |  4 ++--
 poppler/Function.h     | 29 ++++++++++++++++-------------
 poppler/PSOutputDev.cc | 12 ++++++------
 3 files changed, 24 insertions(+), 21 deletions(-)

commit 925b104c33f5a1a546c72794d30a6deb918998f7
Author: Sune Vuorela <sune@vuorela.dk>
Date:   Fri Feb 2 11:18:42 2024 +0100

    Use more vectors and less owning pointers + length

    Also remove a couple of unreferenced functions.

 poppler/CharCodeToUnicode.cc | 175
 ++++++++-----------------------------------
 poppler/CharCodeToUnicode.h  |  16 +---
 2 files changed, 35 insertions(+), 156 deletions(-)

commit d44142d3bb95997af339ebe7d30d2180fe74d6f4
Author: Sune Vuorela <sune@vuorela.dk>
Date:   Mon Feb 5 10:43:01 2024 +0100

    Microoptimization in parsehex

    parsehex is quite a hot codepath when loading documents.

    Various experiments shown that this let the compiler generate slightly
    faster code.

 poppler/CharCodeToUnicode.cc | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 7e66b9afe16e7eb559655d7c400cf4c1e6e04d26
Author: Sune Vuorela <sune@vuorela.dk>
Date:   Fri Feb 2 10:36:44 2024 +0100

    inline UnicodeIsValid

    While profiling document loading, a lot was hitting this function; try
    let the compiler be smarter.

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

commit 5ad744922aeed83ecf2bbdb83c783bbfc23b4192
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Feb 1 23:44:27 2024 +0100

    poppler 24.02.0

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

commit c80ae496d04ebcc94d480e5ba9a1d35a32f03719
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Feb 1 20:20:52 2024 +0100

    Update (C)

 cpp/poppler-toc.cpp          | 1 +
 glib/poppler-document.cc     | 1 +
 poppler/CharCodeToUnicode.cc | 1 +
 poppler/CharCodeToUnicode.h  | 1 +
 poppler/DateInfo.cc          | 1 +
 poppler/JSInfo.cc            | 1 +
 poppler/Outline.cc           | 1 +
 poppler/Outline.h            | 1 +
 poppler/TextOutputDev.cc     | 1 +
 poppler/UTF.cc               | 2 +-
 poppler/UTF.h                | 2 +-
 qt5/src/poppler-outline.cc   | 1 +
 qt5/src/poppler-private.cc   | 1 +
 qt5/src/poppler-private.h    | 1 +
 qt6/src/poppler-outline.cc   | 1 +
 qt6/src/poppler-private.cc   | 1 +
 qt6/src/poppler-private.h    | 1 +
 utils/HtmlFonts.cc           | 1 +
 utils/HtmlFonts.h            | 1 +
 utils/HtmlOutputDev.cc       | 1 +
 utils/HtmlOutputDev.h        | 1 +
 utils/pdfinfo.cc             | 1 +
 utils/pdfsig.cc              | 2 +-
 utils/pdftohtml.cc           | 1 +
 24 files changed, 24 insertions(+), 3 deletions(-)

commit fc1c711cb5f769546c6b31cc688bf0ee7f0c1dbc
Author: Sune Vuorela <sune@vuorela.dk>
Date:   Thu Feb 1 19:11:03 2024 +0000

    More unicode vectors; fewer raw pointers

 cpp/poppler-toc.cpp                  |   5 +-
 glib/poppler-document.cc             |   3 +-
 poppler/CharCodeToUnicode.cc         | 113
 ++++++++++++-----------------------
 poppler/CharCodeToUnicode.h          |  12 ++--
 poppler/DateInfo.cc                  |  10 ++--
 poppler/JSInfo.cc                    |   9 +--
 poppler/Outline.cc                   |  12 +---
 poppler/Outline.h                    |   7 +--
 poppler/TextOutputDev.cc             |   8 +--
 poppler/UTF.cc                       |  78 +++++++++++-------------
 poppler/UTF.h                        |  11 ++--
 qt5/src/poppler-outline.cc           |   2 +-
 qt5/src/poppler-private.cc           |  13 ++--
 qt5/src/poppler-private.h            |   1 +
 qt5/tests/check_internal_outline.cpp |   6 +-
 qt5/tests/check_utf8document.cpp     |   3 +-
 qt5/tests/check_utf_conversion.cpp   |  24 ++++----
 qt6/src/poppler-outline.cc           |   2 +-
 qt6/src/poppler-private.cc           |   5 ++
 qt6/src/poppler-private.h            |   1 +
 qt6/tests/check_internal_outline.cpp |   6 +-
 qt6/tests/check_utf8document.cpp     |   3 +-
 qt6/tests/check_utf_conversion.cpp   |  24 ++++----
 utils/HtmlFonts.cc                   |   4 +-
 utils/HtmlFonts.h                    |   2 +-
 utils/HtmlOutputDev.cc               |  38 ++++++------
 utils/HtmlOutputDev.h                |   2 +-
 utils/pdfinfo.cc                     |   8 +--
 utils/pdfsig.cc                      |   8 +--
 utils/pdftohtml.cc                   |  25 +++-----
 30 files changed, 187 insertions(+), 258 deletions(-)

commit e56d7d7d325928e4db43043eec9c290ef0e690e3
Author: Albert Astals Cid <aacid@kde.org>
Date:   Wed Jan 31 23:46:47 2024 +0100

    Update (C)

 poppler/GlobalParams.cc | 1 +
 1 file changed, 1 insertion(+)

commit c1443b5fdb62c5d02e448933aaeac7a080831cde
Author: Keyu Tao <me@taoky.moe>
Date:   Wed Jan 3 12:47:17 2024 +0800

    Use FcPatternGetCharSet to fast skip fonts in
    findSystemFontFileForUChar

 poppler/GlobalParams.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit af05d3064f459550a361b3f30e3efb0598546948
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Jan 25 23:51:05 2024 +0100

    Fix setting annotpolygon interior color to empty

 poppler/Annot.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit b0d437040cbfa65604d98a30bb2158edf2a2c053
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Jan 25 23:49:53 2024 +0100

    Fix saving annotgeometry interior color when it's empty

    KDE bug #479732

 poppler/Annot.cc | 1 +
 1 file changed, 1 insertion(+)

commit 362e45c7865835a7b249dee4e63b17110f1fb6bb
Author: Nelson Benítez León <nbenitezl@gmail.com>
Date:   Thu Jan 25 16:58:17 2024 +0000

    Remove unneeded comment

 poppler/Stream.h | 1 -
 1 file changed, 1 deletion(-)

commit 2b2d5bc0a7351895c662958105dac11adfecf794
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Jan 25 23:49:11 2024 +0100

    Update (C)

 poppler/JBIG2Stream.cc | 1 +
 1 file changed, 1 insertion(+)

commit 42004cb3278f75403c12bc38bae147937c16ea90
Author: Nelson Benítez León <nbenitezl@gmail.com>
Date:   Thu Jan 25 16:23:23 2024 +0000

    Fix small oversight from b8de1a191

    There was one 'bytecounter increase' case
    that was not imported from the Xpdf code.

    That caused some JPEG streams fail to
    render when hitting that codepath, like
    the file 'p1.blank_with_poppler.pdf'
    posted on issue #1319

    Fixes #1319

 poppler/JBIG2Stream.cc | 1 +
 1 file changed, 1 insertion(+)

commit a93aa6acf6efe14a5f0494552b0e56db5085df35
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Jan 25 00:12:23 2024 +0100

    Add a few const and reduce variable scopes

 utils/ImageOutputDev.h |  4 ++--
 utils/pdfimages.cc     | 14 +++++---------
 2 files changed, 7 insertions(+), 11 deletions(-)

commit 7c9dfc10fd7b3ee3bdd1a71ab932ffd93dfebeba
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Jan 25 00:13:22 2024 +0100

    Update (C)

 poppler/XRef.h          | 2 +-
 utils/ImageOutputDev.cc | 1 +
 utils/ImageOutputDev.h  | 1 +
 utils/pdfimages.cc      | 1 +
 4 files changed, 4 insertions(+), 1 deletion(-)

commit b20632277c6352306651f5625ec43172c470a55c
Author: Fernando Herrera <fherrera@onirica.com>
Date:   Wed Jan 24 22:33:02 2024 +0000

    pdfimages: return exit code 2 when error opening output files

    Issue #1460

 utils/ImageOutputDev.cc | 8 +++++++-
 utils/ImageOutputDev.h  | 8 ++++++--
 utils/pdfimages.cc      | 5 +++--
 3 files changed, 16 insertions(+), 5 deletions(-)

commit 25ffb7b7ac82d8d2b394514149014142a5160096
Author: Sune Vuorela <sune@vuorela.dk>
Date:   Wed Jan 24 10:58:27 2024 +0100

    Make stream compression non-optional

    Requires the users to think if their stream is compressed or not
    and if it is a good idea to compress or not, rather than default to
    'not
    compressed'

 poppler/XRef.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit c7ad20c2eac29d01bdeff12ac0c936ed882ed826
Author: Albert Astals Cid <aacid@kde.org>
Date:   Tue Jan 23 23:47:56 2024 +0100

    Update (C)

 poppler/ImageEmbeddingUtils.cc | 1 +
 1 file changed, 1 insertion(+)

commit 90485ab0a42cb2ec9adcea1308ca11dc2e09572f
Author: Sune Vuorela <sune@vuorela.dk>
Date:   Tue Jan 23 22:44:06 2024 +0000

    Compress images when added

 poppler/ImageEmbeddingUtils.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 6a4c667ee4096ba06e46d86bfc2b18a67e346303
Author: Albert Astals Cid <aacid@kde.org>
Date:   Tue Jan 23 00:02:05 2024 +0100

    Update (C)

 poppler/TextOutputDev.cc | 1 +
 1 file changed, 1 insertion(+)

commit 2158361781699bf6dad451ac1a929f8f328c7413
Author: Adam Sampson <ats@offog.org>
Date:   Thu Jan 18 00:01:15 2024 +0000

    TextPage::takeText: reset actualText for the new page

    actualText has an internal pointer to the TextPage it's writing to, so
    if you called takeText and then continued to output more pages to the
    TextOutputDev, their text would be written to the page you'd taken
    rather than the new one.

 poppler/TextOutputDev.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 87963f675f3532073c1d71c7ba298289485bc7f7
Author: Albert Astals Cid <aacid@kde.org>
Date:   Tue Jan 2 22:40:38 2024 +0100

    poppler 24.01.0

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

commit 38b471d3796efd4a7a01c5a31c1e40606f355213
Author: Albert Astals Cid <aacid@kde.org>
Date:   Tue Jan 2 22:36:39 2024 +0100

    Welcome 2024

 poppler/poppler-config.h.cmake | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f1c69969e031687e6d991677dda021a2a4db48e3
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Dec 29 17:29:56 2023 +0100

    Fix infinite loop in HorizontalTextLayouter if there's not enough
    space to layout text #2

    Happens only if the first chracter we're asking to draw can't be drawn
    with the given font and we need to find a new one and the given
    available space is negative (as said this function must always
    layout at
    least one character)

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

commit 8a9f1d3a84a9f3d66cd353b7fe1aef0b65a37c08
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Dec 28 18:35:21 2023 +0100

    Fix infinite loop in HorizontalTextLayouter if there's not enough
    space to layout text

    Happens only if the first chracter we're asking to draw can't be drawn
    with the given font and we need to find a new one

 poppler/Annot.cc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 4be9ecdadcacf52dc0e413c30d09a61384a36166
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sat Dec 23 01:00:02 2023 +0100

    Update (C)

 poppler/FontInfo.cc | 1 +
 1 file changed, 1 insertion(+)

commit 4fb6a9bc495fa7059e7eed8adb5d46bed44809be
Author: suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
Date:   Fri Dec 8 17:16:38 2023 +0900

    Initialize FontInfo::embRef by Ref::INVALID() for Type3 font.

 poppler/FontInfo.cc | 1 +
 1 file changed, 1 insertion(+)

commit afaddf1be66aed2931a146bb6555225c82cceacd
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Dec 14 00:48:45 2023 +0100

    NSSCryptoSignBackend: Don't crash on certain documents

 poppler/NSSCryptoSignBackend.cc | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 37023cdfc15600cd58303147dc99254c119c51c4
Author: Albert Astals Cid <aacid@kde.org>
Date:   Wed Dec 13 23:08:44 2023 +0100

    Update (C)

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

commit 6fa6d41d046e440165e899a84a38da2c1ec146ed
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Dec 10 23:44:42 2023 +0100

    CI: Add android generic build

 .gitlab-ci.yml | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

commit cf9210568ebd45de13e2f225090df1c9bdfa8248
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Dec 10 23:49:15 2023 +0100

    Fix build on Android with generic font configuration

 poppler/GlobalParams.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 3d870122d70c3b3327d93eb761eb14003cc745a7
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Dec 10 22:40:58 2023 +0100

    We require an openjpeg >= 2.1

 poppler/JPEG2000Stream.cc | 15 ---------------
 1 file changed, 15 deletions(-)

commit 4634bfdaeb46bb981413f247b1cfe82674a5f113
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sat Dec 9 01:17:21 2023 +0100

    CI: Fix build_clang16_libcpp

 .gitlab-ci.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6748cfc84ffef2bfa2328f1da7c70a99d93e0807
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Dec 1 10:31:59 2023 +0100

    poppler 23.12.0

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

commit 84b359b82ee5b10ae714a0fbf3fda53f73e88722
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Sep 28 00:27:54 2023 +0200

    Rewrite FoFiType1::parse to be more flexible

    Previous code needed Encoding to be at the start of it's own line

    The file at issue #1422 doesn't have that and most of the other
    renderers show it correctly so we should do the same.

    Also the code should be easier to understand now, and probably
    faster since we're not copying string around like before

 fofi/FoFiType1.cc  | 295
 ++++++++++++++++++++---------------------------------
 fofi/FoFiType1.h   |  12 +--
 poppler/GfxFont.cc |   9 +-
 3 files changed, 120 insertions(+), 196 deletions(-)

commit 0c53de52deb1328d4d45ab3dfc742acb6386a369
Author: Albert Astals Cid <aacid@kde.org>
Date:   Thu Nov 9 23:56:12 2023 +0100

    Update (C)

 poppler/Object.h  | 1 +
 utils/pdfunite.cc | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 73c7458073429371ef3a9ed4f7edd6060d1f822d
Author: Oliver Sander <oliver.sander@tu-dresden.de>
Date:   Fri Nov 3 09:04:58 2023 +0100

    Lexer: Allocate strings on the stack, not on the heap

    Makes the code easier to read, and possibly even a bit faster, too.

 poppler/Lexer.cc | 60
 +++++++++++++++++++++-----------------------------------
 1 file changed, 22 insertions(+), 38 deletions(-)

commit 6d37f787abc05a658d342d42995c5df167c5e5b9
Author: Oliver Sander <oliver.sander@tu-dresden.de>
Date:   Fri Nov 3 15:30:15 2023 +0100

    Object: Add constructor from r-value std::string

    This can simplify the calling code when the string to use
    is stack-allocated.

    Unfortunately, the new constructor has to do a heap allocation
    internally, because Object stores a pointer to a string,
    not a string value.

    With the new constructor, construction of Object objects from
    std::initializer_list is now ambiguous. This leads to compiler
    errors in a few places where {num, gen} is used to initialize
    an Object with a Ref object.  The patch replaces this construction
    by Ref{num, gen}, which fixes the problem.

 poppler/Object.h               | 5 +++++
 qt5/tests/check_optcontent.cpp | 4 ++--
 qt6/tests/check_optcontent.cpp | 4 ++--
 utils/pdfunite.cc              | 8 ++++----
 4 files changed, 13 insertions(+), 8 deletions(-)

commit 975d6998b0ad979e81ea133be493bbf7be113fc7
Author: Albert Astals Cid <aacid@kde.org>
Date:   Wed Nov 1 22:47:06 2023 +0100

    poppler 23.11.0

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

commit 3caa03d36f78ddeac1a8571a2e789afdfb5f154d
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Oct 22 17:13:38 2023 +0200

    Update (C)

 poppler/CairoOutputDev.cc | 1 +
 1 file changed, 1 insertion(+)

commit 4e86f71b98c45bae7b2304eca630cf2ae24c216d
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Oct 22 17:11:01 2023 +0200

    Simple GooString -> std::string change

 poppler/Annot.cc | 2 +-
 poppler/Annot.h  | 4 ++--
 poppler/Form.cc  | 2 +-
 poppler/Form.h   | 2 +-
 poppler/Link.cc  | 6 +++---
 poppler/Link.h   | 4 ++--
 6 files changed, 10 insertions(+), 10 deletions(-)

commit 9e174595d0e891188275420cf045ddf423a1ecbc
Author: Albert Astals Cid <aacid@kde.org>
Date:   Wed Oct 11 18:23:07 2023 +0200

    Fix crash on broken files

    Bug #1441

 poppler/CairoOutputDev.cc | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

commit f0adfa56e54480f6e41baa89eb6e9b931d6a8359
Author: Anton Thomasson <antonthomasson@gmail.com>
Date:   Sun Sep 24 21:47:16 2023 +0200

    Use internal downscaling algorithm if image exceeds Cairo's maximum
    dimensions.

 poppler/CairoOutputDev.cc | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

commit 4d45d3304a94bc70d5f8a74dcc30b24dc7e54a45
Author: Albert Astals Cid <aacid@kde.org>
Date:   Sun Oct 22 16:47:57 2023 +0200

    Use RefRecursionChecker instead std::set

    Much simpler code

 poppler/Catalog.cc | 26 +++++++++-----------------
 poppler/Catalog.h  |  4 ++--
 2 files changed, 11 insertions(+), 19 deletions(-)

