From a716a6cd5ffd779b30950f046fce91878fc97b9d Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Sun, 5 Oct 2025 00:50:51 +0200 Subject: [PATCH] Add compatibility with Poppler 25.10 (support for older versions kept) Fixes #13173 --- frmts/pdf/pdfobject.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/frmts/pdf/pdfobject.cpp b/frmts/pdf/pdfobject.cpp index d8ded01d3e4b..2c5c44ba04d9 100644 --- a/frmts/pdf/pdfobject.cpp +++ b/frmts/pdf/pdfobject.cpp @@ -1437,7 +1437,12 @@ int64_t GDALPDFStreamPoppler::GetLength(int64_t nMaxSize) static char *GooStringToCharStart(GooString &gstr) { - auto nLength = gstr.getLength(); +#if POPPLER_MAJOR_VERSION > 25 || \ + (POPPLER_MAJOR_VERSION == 25 && POPPLER_MINOR_VERSION >= 10) + const auto nLength = gstr.size(); +#else + const auto nLength = gstr.getLength(); +#endif if (nLength) { char *pszContent = static_cast(VSI_MALLOC_VERBOSE(nLength + 1)); @@ -1514,7 +1519,12 @@ char *GDALPDFStreamPoppler::GetRawBytes() "GDALPDFStreamPoppler::GetRawBytes(): %s", e.what()); return nullptr; } +#if POPPLER_MAJOR_VERSION > 25 || \ + (POPPLER_MAJOR_VERSION == 25 && POPPLER_MINOR_VERSION >= 10) + m_nRawLength = gstr.size(); +#else m_nRawLength = gstr.getLength(); +#endif return GooStringToCharStart(gstr); }