Stack overflow (infinite recursion) with parse_xobject/parse_rsrcdict
Seen in 20221020/e1affc5c8b6d0d6c06c58ad7f9583875c49ab8208059b4961b3a88b8b2fe6d32
from the instigator corpus.
Observed with commit 5ec93b40, before !46 (merged). The latter masks the issue on the above specimen because the parse fails and the program exits before the content processing code is run.
Stack trace:
==918152==ERROR: AddressSanitizer: stack-overflow on address 0x7ffe073ccfd8 (pc 0x7f3be0ed2612 bp 0x7ffe073cd880 sp 0x7ffe073ccfe0 T0)
#0 0x7f3be0ed2611 in __interceptor_strncmp ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:463
#1 0x55e42874ceaa in bytes_eq /home/sven_hallberg_sc/pdf/pdf.c:118
#2 0x55e42874d977 in dictentry /home/sven_hallberg_sc/pdf/pdf.c:419
#3 0x55e42875448f in is_parent /home/sven_hallberg_sc/pdf/pdf.c:3460
#4 0x55e428754a1f in get_dictoftype /home/sven_hallberg_sc/pdf/pdf.c:3548
#5 0x55e428756cc5 in parse_xobject /home/sven_hallberg_sc/pdf/pdf.c:3815
#6 0x55e4287561f9 in parse_rsrcdict /home/sven_hallberg_sc/pdf/pdf.c:3886
#7 0x55e428756dfd in parse_xobject /home/sven_hallberg_sc/pdf/pdf.c:3837
#8 0x55e4287561f9 in parse_rsrcdict /home/sven_hallberg_sc/pdf/pdf.c:3886
#9 0x55e428756dfd in parse_xobject /home/sven_hallberg_sc/pdf/pdf.c:3837
#10 0x55e4287561f9 in parse_rsrcdict /home/sven_hallberg_sc/pdf/pdf.c:3886
...
#244 0x55e4287561f9 in parse_rsrcdict /home/sven_hallberg_sc/pdf/pdf.c:3886
#245 0x55e428756dfd in parse_xobject /home/sven_hallberg_sc/pdf/pdf.c:3837
#246 0x55e4287561f9 in parse_rsrcdict /home/sven_hallberg_sc/pdf/pdf.c:3886
#247 0x55e428756dfd in parse_xobject /home/sven_hallberg_sc/pdf/pdf.c:3837
#248 0x55e4287561f9 in parse_rsrcdict /home/sven_hallberg_sc/pdf/pdf.c:3886