poppler issueshttps://gitlab.freedesktop.org/poppler/poppler/-/issues2022-02-14T09:34:32Zhttps://gitlab.freedesktop.org/poppler/poppler/-/issues/1216Segmentation fault in str_fill_input_buffer()2022-02-14T09:34:32ZcrtSegmentation fault in str_fill_input_buffer()```
Program received signal SIGSEGV, Segmentation fault.
0x00007f8a978f3015 in str_fill_input_buffer (cinfo=<optimized out>)
at /test/poppler/DCTStream.cc:33
33 c = src->str->getChar();
(gdb) bt
#0 0x00007f8a978f3015 in str_...```
Program received signal SIGSEGV, Segmentation fault.
0x00007f8a978f3015 in str_fill_input_buffer (cinfo=<optimized out>)
at /test/poppler/DCTStream.cc:33
33 c = src->str->getChar();
(gdb) bt
#0 0x00007f8a978f3015 in str_fill_input_buffer (cinfo=<optimized out>)
at /test/poppler/DCTStream.cc:33
#1 0x00007f8a95ecfbea in jpeg_fill_bit_buffer () from /usr/lib/x86_64-linux-gnu/libjpeg.so.8
#2 0x00007f8a95ed0777 in ?? () from /usr/lib/x86_64-linux-gnu/libjpeg.so.8
#3 0x00007f8a95ecc166 in ?? () from /usr/lib/x86_64-linux-gnu/libjpeg.so.8
#4 0x00007f8a95ed1dd6 in ?? () from /usr/lib/x86_64-linux-gnu/libjpeg.so.8
#5 0x00007f8a95ecb27a in jpeg_read_scanlines () from /usr/lib/x86_64-linux-gnu/libjpeg.so.8
#6 0x00007f8a978f38d1 in DCTStream::readLine (this=0xf9add0)
at /test/poppler/DCTStream.cc:190
#7 0x00007f8a978f3b37 in DCTStream::getChars (this=<optimized out>, nChars=900,
buffer=0xf9a570 '\377' <repeats 200 times>...)
at /test/poppler/DCTStream.cc:216
#8 0x00007f8a977e010b in Stream::doGetChars (this=0xf9add0, nChars=900,
buffer=0xf9a570 '\377' <repeats 200 times>...)
at /test/poppler/Stream.h:130
```
[poc](/uploads/faa38448518853cfa8a1a4ca9e830235/poc)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1217Double free in gfree()2022-02-14T09:33:30ZcrtDouble free in gfree()```
#0 0x00007fce1db6f438 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#1 0x00007fce1db7103a in __GI_abort () at abort.c:89
#2 0x00007fce1dbb17fa in __libc_message (do_abort=do_abort@entry=2,
fmt=fmt@en...```
#0 0x00007fce1db6f438 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#1 0x00007fce1db7103a in __GI_abort () at abort.c:89
#2 0x00007fce1dbb17fa in __libc_message (do_abort=do_abort@entry=2,
fmt=fmt@entry=0x7fce1dccafd8 "*** Error in `%s': %s: 0x%s ***\n") at ../sysdeps/posix/libc_fatal.c:175
#3 0x00007fce1dbba38a in malloc_printerr (ar_ptr=<optimized out>, ptr=<optimized out>,
str=0x7fce1dccb108 "double free or corruption (!prev)", action=3) at malloc.c:5020
#4 _int_free (av=<optimized out>, p=<optimized out>, have_lock=0) at malloc.c:3874
#5 0x00007fce1dbbe58c in __GI___libc_free (mem=<optimized out>) at malloc.c:2975
#6 0x00007fce1ed20eee in gfree (p=0xb941) at /test/goo/gmem.h:63
#7 ImageStream::~ImageStream (this=0x2292980) at /test/poppler/Stream.cc:583
#8 0x00007fce1ede4788 in SplashOutputDev::drawImage (this=<optimized out>, state=<optimized out>,
ref=<optimized out>, str=0x2292fa0, width=<optimized out>, height=<optimized out>,
colorMap=<optimized out>, interpolate=<optimized out>, maskColors=<optimized out>,
inlineImg=<optimized out>) at /test/poppler/SplashOutputDev.cc:3364
#9 0x00007fce1ec0c41d in Gfx::doImage (this=0x2286bd0, ref=0x7ffe96deb860, str=0x2292fa0,
inlineImg=<error reading variable: access outside bounds of object referenced via synthetic pointer>)
at /test/poppler/Gfx.cc:4520
#10 0x00007fce1ebdc5ca in Gfx::opXObject (this=0x2286bd0, args=<optimized out>, numArgs=<optimized out>)
at /test/poppler/Gfx.cc:4097
#11 0x00007fce1ebf0cf2 in Gfx::execOp (this=0x2286bd0, cmd=<optimized out>, args=0x7ffe96deb9c0,
numArgs=<optimized out>) at /test/poppler/Gfx.cc:802
#12 0x00007fce1ebef2ef in Gfx::go (this=0x2286bd0,
topLevel=<error reading variable: access outside bounds of object referenced via synthetic pointer>)
at /test/poppler/Gfx.cc:679
#13 0x00007fce1ebee9d9 in Gfx::display (this=<optimized out>, obj=0x7ffe96debcc0,
topLevel=<error reading variable: access outside bounds of object referenced via synthetic pointer>)
at /test/poppler/Gfx.cc:640
```
[poc](/uploads/5095160fd23528588a0ce2e534b0c211/poc)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1208Build error on CentOS 72022-02-12T04:43:49ZNikhil RankaBuild error on CentOS 7To get the latest version of poppler on Centos 7., followed the steps mentioned [here](https://gitlab.freedesktop.org/poppler/poppler/-/blob/master/INSTALL).
This required the installation of many devel packages (based on the errors th...To get the latest version of poppler on Centos 7., followed the steps mentioned [here](https://gitlab.freedesktop.org/poppler/poppler/-/blob/master/INSTALL).
This required the installation of many devel packages (based on the errors thrown during `cmake ..` step). Now running `make` throws the following error.
```
[ 0%] Building CXX object CMakeFiles/poppler.dir/poppler/GfxFont.cc.o
/root/building/poppler/poppler/GfxFont.cc:183:13: error: function ‘GfxFontLoc& GfxFontLoc::operator=(GfxFontLoc&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’
GfxFontLoc &GfxFontLoc::operator=(GfxFontLoc &&other) noexcept = default;
^~~~~~~~~~
make[2]: *** [CMakeFiles/poppler.dir/poppler/GfxFont.cc.o] Error 1
make[1]: *** [CMakeFiles/poppler.dir/all] Error 2
```
While the error message is descriptive, wanted to understand if something is fundamentally broken about my environment or my execution of the build process.
Looking forward to getting this working.
**Environment Info**
- Centos Version: CentOS Linux release 7.6.1810 (Core)
- GCC Version: gcc (GCC) 7.3.1 20180303 (upgraded using devtoolset7)
- cmake version: cmake version 3.22.0https://gitlab.freedesktop.org/poppler/poppler/-/issues/1152Non-embedded monospaced font replaced with normal font2022-02-08T07:22:27ZChristian WeiskeNon-embedded monospaced font replaced with normal fontGerman bank "Volksbank" generate PDFs that use fonts "RFont0" (up to "RFont8"), but which are not embedded in the PDF.
Some of those fonts are fixed-width (monospace) fonts and have the correct bit 1 set in their flags ("/Flags 33"), whi...German bank "Volksbank" generate PDFs that use fonts "RFont0" (up to "RFont8"), but which are not embedded in the PDF.
Some of those fonts are fixed-width (monospace) fonts and have the correct bit 1 set in their flags ("/Flags 33"), which indicates that the font is monospaced.
Unfortunately they get replaced with normal dynamic-width fonts, which makes the text very hard to read - the letters have different widths, but are spaced with fixed widths.
Test file: [infobogen-1.pdf](/uploads/d87dbe9f9ba74cfb502319d9dc15fdd4/infobogen-1.pdf)
This happens on Ubuntu 20.04 with Evince 3.36.10 and:
- libpoppler-glib8/focal,now 0.86.1-0ubuntu1
- libpoppler-qt5-1/focal,now 0.86.1-0ubuntu1
- libpoppler97/focal,now 0.86.1-0ubuntu1
- poppler-data/focal,focal,now 0.4.9-2
- poppler-utils/focal,now 0.86.1-0ubuntu1
----
`pdffonts` shows that all fonts are replaced with normal fonts:
```
$ pdffonts -subst infobogen-1.pdf
name object ID substitute font substitute font file
--------------- --------- ------------------ ------------------------------------
RFont0 9 0 DejaVu Sans /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
RFont1 10 0 DejaVu Sans /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
RFont2,Bold 11 0 DejaVu Sans Bold /usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf
RFont3 12 0 DejaVu Sans /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
RFont4 13 0 DejaVu Sans /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
RFont5 14 0 DejaVu Sans /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
```
The font system replaces `RFont3` with DejaVu Sans:
```
$ fc-match RFont3
DejaVuSans.ttf: "DejaVu Sans" "Book"
```
My guess is that poppler asks the font system for the font name, gets a reply and simply uses this - without checking if the name matches exactly, and without checking if the font is monospaced.
----
This is similar to #387, but in that issue the PDF's font information missed the `FixedPitch` bit.
The file renders correctly in `mupdf`.
That issue is well-known in German Linux user circles:
- http://blog.michael-fiedler.net/2014/12/schlechte-darstellung-bei.html
- https://forum.ubuntuusers.de/topic/schriften-in-pdf-datei-sind-verschoben/
- https://github.com/FabKre/repair_fiducia-pdfhttps://gitlab.freedesktop.org/poppler/poppler/-/issues/1204How to set nss3 when compile poppler-22.01.0 using cmake2022-01-26T02:31:48ZFree AvalHow to set nss3 when compile poppler-22.01.0 using cmakeHi,
Because I want to use pdfsig.cc,so when I compiled poppler-22.01.0 using cmake 3.22,it needs to set nss3.before compile poppler-22.01.0,I compiled nss-3.45-with-nspr-4.21 and generated some libs,please look at the attached picture,ho...Hi,
Because I want to use pdfsig.cc,so when I compiled poppler-22.01.0 using cmake 3.22,it needs to set nss3.before compile poppler-22.01.0,I compiled nss-3.45-with-nspr-4.21 and generated some libs,please look at the attached picture,however,when I set NSS3_INCLUDE_DIR and NSS3_LIBRARY_RELEASE,the cmake always shows "use nss3: no",please look at the attached picture,could anyone tell me how to set nss3.![nss3_1](/uploads/ae4d758bcae3115ae659ecf34d4eefef/nss3_1.png)![nss3_2](/uploads/7d2b87c1bfee7228b224ab170ec85e44/nss3_2.png)
Kindly regards,
Alexhttps://gitlab.freedesktop.org/poppler/poppler/-/issues/1205(easy to solve) Use https for a connection2022-01-24T13:08:21ZGanton(easy to solve) Use https for a connectionDear poppler people :-),
When security-conscious persons go to https://poppler.freedesktop.org/ they see "The tarball has been signed (.sig file) by Albert Astals Cid CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7" but when they click on the...Dear poppler people :-),
When security-conscious persons go to https://poppler.freedesktop.org/ they see "The tarball has been signed (.sig file) by Albert Astals Cid CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7" but when they click on the CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 link... they see a crossed out padlock in the address bar. That leaves them doubting.
What about adding a "https://" to the destination address? That way there's no crossed out padlock and everything seems to be right.
Thank you!https://gitlab.freedesktop.org/poppler/poppler/-/issues/1203std::filesystem sometimes needs special libraries2022-01-20T23:13:13ZThomas Klausnerstd::filesystem sometimes needs special librariesRecently (https://gitlab.freedesktop.org/poppler/poppler/-/commit/e2ec957c0174a36396c3e8c194f44a1f300a950f) poppler started using std::filesystem.
On some systems you need to link against additional libraries to make this work.
See https...Recently (https://gitlab.freedesktop.org/poppler/poppler/-/commit/e2ec957c0174a36396c3e8c194f44a1f300a950f) poppler started using std::filesystem.
On some systems you need to link against additional libraries to make this work.
See https://en.cppreference.com/w/cpp/filesystem :
```
Notes
Using this library may require additional compiler/linker options. GNU implementation prior to 9.1 requires linking with -lstdc++fs and LLVM implementation prior to LLVM 9.0 requires linking with -lc++fs.
```
pkgsrc got a bug report about a Solaris system with this problem, see the thread starting at
https://mail-index.netbsd.org/pkgsrc-users/2022/01/19/msg035078.htmlhttps://gitlab.freedesktop.org/poppler/poppler/-/issues/1193Cannot use certificates from smartcard to sign PDFs2022-01-16T16:30:17ZMartinCannot use certificates from smartcard to sign PDFsI would like to sign PDFs with certificates stored on smartcards. However, I cannot select these certificates, even though my smartcard is inserted and unlocked.
For my very own use case, Poppler is missing this:
```patch
diff --git a/...I would like to sign PDFs with certificates stored on smartcards. However, I cannot select these certificates, even though my smartcard is inserted and unlocked.
For my very own use case, Poppler is missing this:
```patch
diff --git a/poppler/SignatureHandler.cc b/poppler/SignatureHandler.cc
index 41e89970..3493afe9 100644
--- a/poppler/SignatureHandler.cc
+++ b/poppler/SignatureHandler.cc
@@ -743,6 +743,7 @@ void SignatureHandler::setNSSDir(const GooString &nssDir)
if (initSuccess) {
// Make sure NSS root certificates module is loaded
SECMOD_AddNewModule("Root Certs", "libnssckbi.so", 0, 0);
+ SECMOD_AddNewModule("Smartcard", "onepin-opensc-pkcs11.so", 0, 0);
}
}
```
With this patch in place, everything works just fine for me. However, I am not sure hardcoding some NSS plugins into Poppler is a good idea. I think users/applications should be able to register NSS plugins and Poppler `SECMOD_AddNewModule`s all registered plugins when-its-appropriate (TM).https://gitlab.freedesktop.org/poppler/poppler/-/issues/1194Opening PDFs with signatures is slow2022-01-14T20:39:41ZMartinOpening PDFs with signatures is slowI am afraid I cannot be any more specific than this. I just noticed a file takes considerably longer to open after it has been signed (only once and by me).
I do my observations using Okular, but I think it has to with something that Po...I am afraid I cannot be any more specific than this. I just noticed a file takes considerably longer to open after it has been signed (only once and by me).
I do my observations using Okular, but I think it has to with something that Poppler does. I tried profiling Okular and Poppler while opening the files, but there wasn't anything obvious that jumps out right away. I noticed that as soon as there are signatures in a PDF, there are a couple of 10k calls to SignatureHandler::updateHash (and implicitly NSS's HASH_Update). This seems like a lot and that number does not scale with the number of signatures in the document,
Wild guess: NSS takes a few seconds to initialize and during that time Poppler builds up a huge queue of tasks and retries until NSS is available ... or something in this direction. It would align with the fact that starting the PDF signing workflow in Okular stalls the application for many seconds if I start it right away, as soon as an unsigned PDF is displayed on screen, while there isn't any delay for PDFs with signatures.https://gitlab.freedesktop.org/poppler/poppler/-/issues/1199PDF signatures with background image, if provided2022-01-10T23:09:28ZMartinPDF signatures with background image, if providedAs a consumer of Poppler, I use PDFDoc::sign to digitally sign a PDF document. PDFDoc::sign takes many parameters, i.e.
* a std::string parameter `imagePath`, a background image to used for the signature widget
* a GooString parameter `...As a consumer of Poppler, I use PDFDoc::sign to digitally sign a PDF document. PDFDoc::sign takes many parameters, i.e.
* a std::string parameter `imagePath`, a background image to used for the signature widget
* a GooString parameter `signatureLeftText`, text to be rendered into the signature widget
Calling PDFDoc::sign ultimately invokes AnnotAppearanceBuilder::drawSignatureFieldText which will only draw the background image identified by `imagePath`, if `signatureLeftText` is an empty string. This is neither obvious nor intuitive. Currently, PDFDoc::sign does not allow me to have both: non-empty `signatureLeftText` and a background image.
As a consumer of PDFDoc::sign I want it to draw a background image, if I provide one when calling the method.https://gitlab.freedesktop.org/poppler/poppler/-/issues/1197How to add a signature to pdf file by poppler2022-01-10T08:41:45ZFree AvalHow to add a signature to pdf file by popplerHi all,
I compiled poppler and found a sample for valigating signature,however,I want to add a digital signature to pdf,does anyone could tell me how to do this.
ThanksHi all,
I compiled poppler and found a sample for valigating signature,however,I want to add a digital signature to pdf,does anyone could tell me how to do this.
Thankshttps://gitlab.freedesktop.org/poppler/poppler/-/issues/144PDF form fields appear blank, but contain data2022-01-09T11:31:07ZBugzilla Migration UserPDF form fields appear blank, but contain data## Submitted by Germán Poo-Caamaño
Assigned to **poppler-bugs**
**[Link to original bug (#106840)](https://bugs.freedesktop.org/show_bug.cgi?id=106840)**
## Description
Created attachment 140054
PDF Test case (Form with hidden dat...## Submitted by Germán Poo-Caamaño
Assigned to **poppler-bugs**
**[Link to original bug (#106840)](https://bugs.freedesktop.org/show_bug.cgi?id=106840)**
## Description
Created attachment 140054
PDF Test case (Form with hidden data)
As reported in https://gitlab.gnome.org/GNOME/evince/issues/563
-->snip<--
Debian "Wheezy" with Evince 3.4.0 using poppler/cairo (0.18.4).
A PDF form created (LibreOffice 3.5.4.2). I can use Evince to enter data in fields, save the file, and then read the data using Evince.
The file was sent to another person, who used Preview on a iMac to enter data and returned the file to me. It worked fine for him. When I open the file with Evince, the fields all appear blank (except for the checkbox he used). BUT if I select a field, the entered data appears and then disappears as I click somewhere else in the document.
Extra information about the returned form:
xpdf will not display the entered data.
imagemagick shows all data in the form.
It is smaller than the original.
Running Evince from the command-line shows a series of:
'Error: Unknown font in field's DA string'
I have tried setting the font in the fields to Times New Roman in case the iMac did not recognise Arial - no difference.
File as returned to me is attached.
-->snip<--
**Attachment 140054**, "PDF Test case (Form with hidden data)":
[Testdoc2.pdf](/uploads/2eacb3a236adf11de2ed3dfd4e5ef6d4/Testdoc2.pdf)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1198PDFDoc::sign paramter borderWidth has no effect2022-01-09T10:29:36ZMartinPDFDoc::sign paramter borderWidth has no effectIn `poppler/PDFDoc.cc` the method PDFDoc::sign takes a parameter `double borderWidth`, which is used to set the signature annotation widget's border:
std::unique_ptr<AnnotBorder> border(new AnnotBorderArray());
border->setWidth(...In `poppler/PDFDoc.cc` the method PDFDoc::sign takes a parameter `double borderWidth`, which is used to set the signature annotation widget's border:
std::unique_ptr<AnnotBorder> border(new AnnotBorderArray());
border->setWidth(borderWidth);
signatureAnnot->setBorder(std::move(border));
However, the call to `signatureAnnot->generateFieldAppearance()` happens before the quoted lines and therefore the quoted lines have no effect.https://gitlab.freedesktop.org/poppler/poppler/-/issues/824Cannot decrypt PDF with passwords containing special characters [åäö!"§$%&]2022-01-08T17:51:12ZleukimiCannot decrypt PDF with passwords containing special characters [åäö!"§$%&]**Summary**
Evince v3.28.4 and apparently also Okular does not open AES-256 encrypted PDF with password containing characters [åäö!"§$%&].
**Description**
Evince Document Viewer v3.28.4 (standard on Ubuntu 18.04LTS) and apparently als...**Summary**
Evince v3.28.4 and apparently also Okular does not open AES-256 encrypted PDF with password containing characters [åäö!"§$%&].
**Description**
Evince Document Viewer v3.28.4 (standard on Ubuntu 18.04LTS) and apparently also Okular, both apparently using `libpoppler`, does not open AES-256 encrypted PDF with password containing characters [åäö!"§$%&]. Firefox (and Foxit Reader) does open it. See [this](https://gitlab.gnome.org/GNOME/evince/issues/1007) and [this](https://gitlab.gnome.org/GNOME/evince/issues/1245) post about the issues that have been found. Suggestion was made to file the bug here.
Here is an output of what versions of `libpoppler` and `cups-pdf` are on the Ubuntu 18.04.3 LTS (latest) currently.
```
$ apt list --installed | grep poppler
libpoppler-glib8/bionic-updates,bionic-security,now 0.62.0-2ubuntu2.10 amd64
libpoppler73/bionic-updates,bionic-security,now 0.62.0-2ubuntu2.10 amd64
poppler-data/bionic,bionic,now 0.4.8-2 all
poppler-utils/bionic-updates,bionic-security,now 0.62.0-2ubuntu2.10 amd64
$ apt list --installed | grep cups-pdf
printer-driver-cups-pdf/bionic,now 3.0.1-5 amd64
```
Package info [printer-driver-cups-pdf 3.0.1-5](https://packages.debian.org/sid/printer-driver-cups-pdf)
Test script \[test_case_01.sh\] provided here to reproduce the issue:
```
#!/bin/bash
# test_case_01.sh
#
# Tested on GNU bash v4.4.20 on Ubuntu 18.04LTS.
# May also work on other linux releases.
# Script requires: qpdf poppler-utils printer-driver-cups-pdf cups-filters
# If not present, install it:
# sudo apt-get install qpdf poppler-utils printer-driver-cups-pdf cups-filters
# Generate a random text like lorem ipsum.
# Put the contents in a text file.
cd /tmp # directory where the three files will be created
filenametxt="foo.txt"
tr -dc a-z1-4 </dev/urandom | tr 1-2 ' \n' | awk 'length==0 || length>50' | tr 3-4 ' ' | sed 's/^ *//' | cat -s | sed 's/ / /g' | fmt | head -30 > $filenametxt
# Create a PDF file from the text file:
filenamepdf=$(basename -s .txt $filenametxt).pdf
cupsfilter -e $filenametxt > $filenamepdf
# Encrypt the PDF file and change the extension to [*_encrypted.pdf] :
userpassvar="ä" # "åäö"
ownerpassvar="å" # "åäö"
encryptedfilenamepdf=$(basename -s .txt $filenametxt)_encrypted.pdf
qpdf --encrypt $userpassvar $ownerpassvar 256 --use-aes=y -- $filenamepdf $encryptedfilenamepdf
# Show the info of the encrypted PDF:
pdfinfo -upw $userpassvar -opw $ownerpassvar $encryptedfilenamepdf
# Open the encrypted PDF with Evince and Firefox with the user/owner password.
evince $encryptedfilenamepdf &
firefox $encryptedfilenamepdf &
exit 0
```
**Result**
Evince v3.28.4 does not accept any of the passwords containing [åäö!"§$%&].
Firefox (and Foxit Reader) accepts both passwords containing [åäö!"§$%&].https://gitlab.freedesktop.org/poppler/poppler/-/issues/1190pdfsig password error.2022-01-05T19:02:28ZMayank Guptapdfsig password error.My pdf is password protected and there is no way to enter password in arguments.
```
root@651c62d41905:/# pdfsig -help
pdfsig version 21.06.1
Copyright 2005-2021 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-201...My pdf is password protected and there is no way to enter password in arguments.
```
root@651c62d41905:/# pdfsig -help
pdfsig version 21.06.1
Copyright 2005-2021 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011 Glyph & Cog, LLC
```
and the error i am getting
```
root@651c62d41905:/# pdfsig maya1999.pdf
Command Line Error: Incorrect password
```https://gitlab.freedesktop.org/poppler/poppler/-/issues/1191Build problem in latest files.2022-01-02T11:52:09ZMayank GuptaBuild problem in latest files.I am trying to build the latest files and data with the following commands.
```
cd poppler-data-0.4.11 \
&& make install \
&& cd .. \
&& cd poppler-21.12.0 \
&& mkdir builds \
&& cd builds \
&& cmake .. \
&& ...I am trying to build the latest files and data with the following commands.
```
cd poppler-data-0.4.11 \
&& make install \
&& cd .. \
&& cd poppler-21.12.0 \
&& mkdir builds \
&& cd builds \
&& cmake .. \
&& make \
&& make install \
&& ldconfig
```
And i am getting error.
```
/home/ubuntu/popp/poppler-21.12.0/poppler/Form.cc: In member function ‘SignatureInfo* FormFieldSignature::validateSignature(bool, bool, time_t, bool, bool)’:
/home/ubuntu/popp/poppler-21.12.0/poppler/Form.cc:2195:69: error: request for member ‘c_str’ in ‘signature_handler.SignatureHandler::getSignerName()’, which is of non-class type ‘char*’
2195 | signature_info->setSignerName(signature_handler.getSignerName().c_str());
| ^~~~~
make[2]: *** [CMakeFiles/poppler.dir/build.make:518: CMakeFiles/poppler.dir/poppler/Form.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:471: CMakeFiles/poppler.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
```
my server info.
```
ubuntu@ip-172-31-8-106:~$ uname -a
Linux ip-172-31-8-106 5.11.0-1022-aws #23~20.04.1-Ubuntu SMP Mon Nov 15 14:03:19 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
ubuntu@ip-172-31-8-106:~$ cmake --version
cmake version 3.16.3
CMake suite maintained and supported by Kitware (kitware.com/cmake).
ubuntu@ip-172-31-8-106:~$
```
The important file for me is pdfsig, i need to build that. I downloaded the latest `poppler-21.12.0.tar.xz` and replaced the new pdfsig.cc and .h files so i can get new arguments but it is not working. Any help would be appreciated.https://gitlab.freedesktop.org/poppler/poppler/-/issues/1180New glib FD APIs in 21.12 do not build on MSVC2021-12-15T17:05:08ZPeter WilliamsNew glib FD APIs in 21.12 do not build on MSVCThe recent 21.12.0 release added new file-descriptor APIs to the glib module that don't build on MSVC. We're being bitten by these in the [conda-forge Poppler package][x]. The errors I've encountered are:
[x]: https://github.com/conda-f...The recent 21.12.0 release added new file-descriptor APIs to the glib module that don't build on MSVC. We're being bitten by these in the [conda-forge Poppler package][x]. The errors I've encountered are:
[x]: https://github.com/conda-forge/poppler-feedstock/pull/121
- (not directly related): in `poppler/ImageEmbeddingUtils.cc`, build failure due to redefinition of `INT32` in libjpeg, because the Windows system headers need to be included first. Can be solved by moving the libjpeg #include to the bottom of the file preamble
- in `glib/poppler-document.cc`, need to `#include <glib.h>` before the `#ifndef G_OS_WIN32` because otherwise it will never be defined!
- Unguarded use of `close()` in `poppler_ps_file_finalize`
- Use of various functions that on Windows are available with underscore-prefixed names; in the conda-forge build these yield deprecation warnings but not build failures: `strdup`, `dup`, `fileno`, `fdopen`, `stricmp`.
Note that the preexisting `poppler_document_new_from_fd` is guarded with `#ifndef G_OS_WIN32` so that on Windows the function just always fails. One option would be to do likewise for the new APIs. Also note that it looks like `_close` is available on MSVC, it just doesn't have the `close` compatibility wrapper unlike the other problematic FD functions.https://gitlab.freedesktop.org/poppler/poppler/-/issues/1184Incorrect results produced by pottopm2021-12-09T06:25:31ZShaohua LiIncorrect results produced by pottopmHi there,
I compiled poppler with `clang -O0 and `clang -O2`. I found that for some inputs, the generated `popptom` would emit different results.
- Compile args: compile poppler twice. Once with _`CC=clang-13 CXX=clang++-13 CFLAGS="-O0...Hi there,
I compiled poppler with `clang -O0 and `clang -O2`. I found that for some inputs, the generated `popptom` would emit different results.
- Compile args: compile poppler twice. Once with _`CC=clang-13 CXX=clang++-13 CFLAGS="-O0" CXXFLAGS="-O0"`_. Another with _`CC=clang-13 CXX=clang++-13 CFLAGS="-O2" CXXFLAGS="-O2"`_.
- Reproduce: run **`./utils/pdftoppm -mono -cropbox diff.pdf`** with two `pdftoppm`, you may need to run `pdftoppm (clang -O2)` a few times to observe the difference.
- File: [diff.pdf](/uploads/649c2f8a85c75ecacc44a891fe06acf5/diff.pdf)
For `clang -O0` compiled one, the output would always be
```
P4
41 42
�@
```
But for `clang -O2` compiled one, the output sometimes change to
```
P4
41 42
>>@�@
```https://gitlab.freedesktop.org/poppler/poppler/-/issues/1183heap-use-after-free in Splash::pipeSetXY(SplashPipe*, int, int)2021-12-09T06:25:31ZShaohua Liheap-use-after-free in Splash::pipeSetXY(SplashPipe*, int, int)Hi there,
I found a heap-use-after-free when fuzzing `pdftoppm`.
- Compiler: clang-13
- Platform: Ubuntu 20.04.4 LTS, x86_64
- POC: [heap_use_after_free_pipeSetXY.poc](/uploads/d06080e811e844ed65a63b0211e6fe68/heap_use_after_free_pip...Hi there,
I found a heap-use-after-free when fuzzing `pdftoppm`.
- Compiler: clang-13
- Platform: Ubuntu 20.04.4 LTS, x86_64
- POC: [heap_use_after_free_pipeSetXY.poc](/uploads/d06080e811e844ed65a63b0211e6fe68/heap_use_after_free_pipeSetXY.poc)
- Reproduce: run `./utils/pdftoppm -mono -cropbox heap_use_after_free_pipeSetXY.poc`
Address Sanitizer report:
```
==2639985==ERROR: AddressSanitizer: heap-use-after-free on address 0x604000000c20 at pc 0x000000910995 bp 0x7fffe041d240 sp 0x7fffe041d238
READ of size 4 at 0x604000000c20 thread T0
#0 0x910994 in Splash::pipeSetXY(SplashPipe*, int, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/splash/Splash.cc:1194:21
#1 0x90709d in Splash::pipeInit(SplashPipe*, int, int, SplashPattern*, unsigned char*, unsigned char, bool, bool, bool, unsigned char) /pdftoppm/analysis/debug/asan/clang13-default/poppler/splash/Splash.cc:208:5
#2 0x88050a in Splash::fillWithPattern(SplashPath*, bool, SplashPattern*, double) /pdftoppm/analysis/debug/asan/clang13-default/poppler/splash/Splash.cc:2395:9
#3 0x885ca9 in Splash::fill(SplashPath*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/splash/Splash.cc:2279:12
#4 0x7840d8 in SplashOutputDev::fill(GfxState*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/SplashOutputDev.cc:2110:13
#5 0xdfd7a7 in Gfx::gouraudFillTriangle(double, double, GfxColor*, double, double, GfxColor*, double, double, GfxColor*, int, int, GfxState::ReusablePathIterator*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:3314:14
#6 0xdfe72b in Gfx::gouraudFillTriangle(double, double, GfxColor*, double, double, GfxColor*, double, double, GfxColor*, int, int, GfxState::ReusablePathIterator*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:3328:9
#7 0xdf5967 in Gfx::doGouraudTriangleShFill(GfxGouraudTriangleShading*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:3271:13
#8 0xde03b0 in Gfx::doShadingPatternFill(GfxShadingPattern*, bool, bool, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:2318:9
#9 0xdc9fe4 in Gfx::doPatternFill(bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:1898:9
#10 0xd99b2d in Gfx::opFill(Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:1758:17
#11 0xdc3271 in Gfx::execOp(Object*, Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:804:5
#12 0xdc0f84 in Gfx::go(bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:681:13
#13 0xdc05d4 in Gfx::display(Object*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:642:5
#14 0xdc7fc7 in Gfx::drawForm(Object*, Dict*, double const*, double const*, bool, bool, GfxColorSpace*, bool, bool, bool, Function*, GfxColor*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:4814:5
#15 0xe2b055 in Gfx::doForm(Object*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:4744:5
#16 0xd9843f in Gfx::opXObject(Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:4132:17
#17 0xdc3271 in Gfx::execOp(Object*, Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:804:5
#18 0xdc0f84 in Gfx::go(bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:681:13
#19 0xdc05d4 in Gfx::display(Object*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:642:5
#20 0x10f60a1 in Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Page.cc:576:14
#21 0x5275ba in PDFDoc::displayPageSlice(OutputDev*, int, double, double, int, bool, bool, bool, int, int, int, int, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/PDFDoc.cc:675:24
#22 0x4dcc13 in savePageSlice(PDFDoc*, SplashOutputDev*, int, int, int, int, int, double, double, char*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm.cc:290:10
#23 0x4db4f4 in main /pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm.cc:690:9
#24 0x7f80b5eb70b2 in __libc_start_main /build/glibc-eX1tMB/glibc-2.31/csu/../csu/libc-start.c:308:16
#25 0x42353d in _start (/shared/targets/pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm+0x42353d)
0x604000000c20 is located 16 bytes inside of 48-byte region [0x604000000c10,0x604000000c40)
freed by thread T0 here:
#0 0x4d230d in operator delete(void*) (/shared/targets/pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm+0x4d230d)
#1 0x8ef682 in Splash::gouraudTriangleShadedFill(SplashGouraudColor*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/splash/Splash.cc:5471:17
#2 0x7e6003 in SplashOutputDev::gouraudTriangleShadedFill(GfxState*, GfxGouraudTriangleShading*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/SplashOutputDev.cc:4426:33
#3 0xdf478b in Gfx::doGouraudTriangleShFill(GfxGouraudTriangleShading*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:3239:18
#4 0xde03b0 in Gfx::doShadingPatternFill(GfxShadingPattern*, bool, bool, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:2318:9
#5 0xdc9fe4 in Gfx::doPatternFill(bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:1898:9
#6 0xd99b2d in Gfx::opFill(Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:1758:17
#7 0xdc3271 in Gfx::execOp(Object*, Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:804:5
#8 0xdc0f84 in Gfx::go(bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:681:13
#9 0xdc05d4 in Gfx::display(Object*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:642:5
#10 0xdc7fc7 in Gfx::drawForm(Object*, Dict*, double const*, double const*, bool, bool, GfxColorSpace*, bool, bool, bool, Function*, GfxColor*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:4814:5
#11 0xe2b055 in Gfx::doForm(Object*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:4744:5
#12 0xd9843f in Gfx::opXObject(Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:4132:17
#13 0xdc3271 in Gfx::execOp(Object*, Object*, int) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:804:5
#14 0xdc0f84 in Gfx::go(bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:681:13
#15 0xdc05d4 in Gfx::display(Object*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:642:5
#16 0x10f60a1 in Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Page.cc:576:14
#17 0x5275ba in PDFDoc::displayPageSlice(OutputDev*, int, double, double, int, bool, bool, bool, int, int, int, int, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/PDFDoc.cc:675:24
#18 0x4dcc13 in savePageSlice(PDFDoc*, SplashOutputDev*, int, int, int, int, int, double, double, char*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm.cc:290:10
#19 0x4db4f4 in main /pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm.cc:690:9
#20 0x7f80b5eb70b2 in __libc_start_main /build/glibc-eX1tMB/glibc-2.31/csu/../csu/libc-start.c:308:16
previously allocated by thread T0 here:
#0 0x4d1aad in operator new(unsigned long) (/shared/targets/pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm+0x4d1aad)
#1 0x7664da in SplashOutputDev::startPage(int, GfxState*, XRef*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/SplashOutputDev.cc:1350:18
#2 0xdbc431 in Gfx::Gfx(PDFDoc*, OutputDev*, int, Dict*, double, double, PDFRectangle const*, PDFRectangle const*, int, bool (*)(void*), void*, XRef*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Gfx.cc:480:10
#3 0x10f7c5f in Page::createGfx(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool (*)(void*), void*, XRef*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Page.cc:550:15
#4 0x10f5f6e in Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/Page.cc:571:11
#5 0x5275ba in PDFDoc::displayPageSlice(OutputDev*, int, double, double, int, bool, bool, bool, int, int, int, int, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) /pdftoppm/analysis/debug/asan/clang13-default/poppler/poppler/PDFDoc.cc:675:24
#6 0x4dcc13 in savePageSlice(PDFDoc*, SplashOutputDev*, int, int, int, int, int, double, double, char*) /pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm.cc:290:10
#7 0x4db4f4 in main /pdftoppm/analysis/debug/asan/clang13-default/poppler/utils/pdftoppm.cc:690:9
#8 0x7f80b5eb70b2 in __libc_start_main /build/glibc-eX1tMB/glibc-2.31/csu/../csu/libc-start.c:308:16
SUMMARY: AddressSanitizer: heap-use-after-free /pdftoppm/analysis/debug/asan/clang13-default/poppler/splash/Splash.cc:1194:21 in Splash::pipeSetXY(SplashPipe*, int, int)
Shadow bytes around the buggy address:
0x0c087fff8130: fa fa fd fd fd fd fd fd fa fa 00 00 00 00 00 00
0x0c087fff8140: fa fa fd fd fd fd fd fd fa fa fd fd fd fd fd fd
0x0c087fff8150: fa fa fd fd fd fd fd fd fa fa fd fd fd fd fd fd
0x0c087fff8160: fa fa fd fd fd fd fd fd fa fa 00 00 00 00 00 00
0x0c087fff8170: fa fa 00 00 00 00 00 00 fa fa fd fd fd fd fd fa
=>0x0c087fff8180: fa fa fd fd[fd]fd fd fd fa fa fd fd fd fd fd fd
0x0c087fff8190: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
0x0c087fff81a0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
0x0c087fff81b0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
0x0c087fff81c0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
0x0c087fff81d0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==2639985==ABORTING
```https://gitlab.freedesktop.org/poppler/poppler/-/issues/393SEGV in StreamPredictor::getChar when using ENABLE_ZLIB_UNCOMPRESS2021-12-09T06:25:31ZBugzilla Migration UserSEGV in StreamPredictor::getChar when using ENABLE_ZLIB_UNCOMPRESS## Submitted by Antti Husa
Assigned to **poppler-bugs**
**[Link to original bug (#76631)](https://bugs.freedesktop.org/show_bug.cgi?id=76631)**
## Description
Created attachment 96408
Fuzzed PDF file that causes SEGV
Segfault whe...## Submitted by Antti Husa
Assigned to **poppler-bugs**
**[Link to original bug (#76631)](https://bugs.freedesktop.org/show_bug.cgi?id=76631)**
## Description
Created attachment 96408
Fuzzed PDF file that causes SEGV
Segfault when malformed PDF file is opened.
Reproduced on Evince and Zathura with Poppler version 0.25.1 (git master branch).
Distrubution: Gentoo Linux 64bit
Evince version: 3.10.3
Zathura version: 0.2.1
Zathura-pdf-poppler version: 0.2.3
Malformed file is given as an attachment.
ASAN report:
==9396== ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7effa86af3a3 sp 0x7effa5c9d810 bp 0x7effa5c9d820 T3)
AddressSanitizer can not provide additional info.
#0 0x7effa86af3a2 in StreamPredictor::getChar() /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Stream.cc:615
#1 0x7effa87f5655 in FlateStream::getChar() /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/FlateStream.cc:58
#2 0x7effa856bf60 in Stream::doGetChars(int, unsigned char*) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Stream.h:126
#3 0x7effa86ae19f in ImageStream::getLine() /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Stream.cc:517
#4 0x7effa8d5c301 in RescaleDrawImage::getRow(int, unsigned int*) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/CairoOutputDev.cc:2836
#5 0x7effa8d5d674 in CairoRescaleBox::downScaleImage(unsigned int, unsigned int, int, int, unsigned short, unsigned short, unsigned short, unsigned short, _cairo_surface*) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/CairoRescaleBox.cc:338
#6 0x7effa8d5c121 in RescaleDrawImage::getSourceImage(Stream*, int, int, int, int, bool, GfxImageColorMap*, int*) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/CairoOutputDev.cc:2817
#7 0x7effa8d56fe8 in CairoOutputDev::drawImage(GfxState*, Object*, Stream*, int, int, GfxImageColorMap*, bool, int*, bool) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/CairoOutputDev.cc:2896
#8 0x7effa85d9840 in Gfx::doImage(Object*, Stream*, bool) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Gfx.cc:4653
#9 0x7effa85d68f2 in Gfx::opXObject(Object*, int) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Gfx.cc:4179
#10 0x7effa85b049c in Gfx::execOp(Object*, Object*, int) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Gfx.cc:903
#11 0x7effa85af685 in Gfx::go(bool) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Gfx.cc:762
#12 0x7effa85af2d9 in Gfx::display(Object*, bool) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Gfx.cc:728
#13 0x7effa86928cd in Page::displaySlice(OutputDev*, double, double, int, bool, bool, int, int, int, int, bool, bool (*)(void*), void*, bool (*)(Annot*, void*), void*, bool) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Page.cc:585
#14 0x7effa8d17f53 in _poppler_page_render(_PopplerPage*, _cairo*, bool, PopplerPrintFlags) /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/glib/poppler-page.cc:362
#15 0x7effa8d1807a in poppler_page_render /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/glib/poppler-page.cc:385
#16 0x7effa8f9cf2c in pdf_page_render_cairo /var/tmp/portage/app-text/zathura-pdf-poppler-0.2.3/work/zathura-pdf-poppler-0.2.3/pdf.c:809
#17 0x42f947 in render /var/tmp/portage/app-text/zathura-0.2.1/work/zathura-0.2.1/render.c:183
#18 0x42f947 in render_job /var/tmp/portage/app-text/zathura-0.2.1/work/zathura-0.2.1/render.c:37
#19 0x7effb11cbea5 (/usr/lib64/libglib-2.0.so.0+0x6fea5)
#20 0x7effb11cb4e4 (/usr/lib64/libglib-2.0.so.0+0x6f4e4)
#21 0x7effb287ec07 in __asan::AsanThread::ThreadStart() /home/aki/opt/fu/work/tmp/gcc-4.8.1/x86_64-unknown-linux-gnu/libsanitizer/asan/../../.././libsanitizer/asan/asan_thread.cc:99
#22 0x7effb0b41f39 in start_thread /var/tmp/portage/sys-libs/glibc-2.17/work/glibc-2.17/nptl/pthread_create.c:308
#23 0x7effb057ec3c (/lib64/libc.so.6+0xedc3c)
SUMMARY: AddressSanitizer: SEGV /var/tmp/portage/app-text/poppler-9999/work/poppler-9999/poppler/Stream.cc:615 StreamPredictor::getChar()
Thread T3 (pool) created by T0 here:
#0 0x7effb2870c5b in __interceptor_pthread_create /home/aki/opt/fu/work/tmp/gcc-4.8.1/x86_64-unknown-linux-gnu/libsanitizer/asan/../../.././libsanitizer/asan/asan_interceptors.cc:122
#1 0x7effb11e6941 (/usr/lib64/libglib-2.0.so.0+0x8a941)
==9396== ABORTING
--
Antti Husa
Research Assistant, OUSPG
**Attachment 96408**, "Fuzzed PDF file that causes SEGV":
[empty.pdf](/uploads/e568c127506ce11f6dcab4349cf6f94b/empty.pdf)