From fedd42191f0eec498ba1c22ef13beae0f37387aa Mon Sep 17 00:00:00 2001 From: m-holger Date: Tue, 25 Jul 2023 14:34:14 +0100 Subject: Change QPDF::copyForeignObject to return a null object when called with a /Pages object (fixes #1011) --- libqpdf/QPDF.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'libqpdf') diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index c5a7ab5d..45bd1847 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -2026,7 +2026,13 @@ QPDF::copyForeignObject(QPDFObjectHandle foreign) } obj_copier.to_copy.clear(); - return obj_copier.object_map[foreign.getObjGen()]; + auto& result = obj_copier.object_map[foreign.getObjGen()]; + if (!result.isInitialized()) { + result = QPDFObjectHandle::newNull(); + warn(damagedPDF("Unexpected reference to /Pages object while copying foreign object. " + "Replacing with Null object.")); + } + return result; } void -- cgit v1.2.3-54-g00ecf