diff options
-rw-r--r-- | libqpdf/QPDF.cc | 12 | ||||
-rw-r--r-- | qpdf/qtest/qpdf/copy-foreign-objects-25.out | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index e39f9b7a..95ed39ec 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -2034,13 +2034,13 @@ QPDF::copyForeignObject(QPDFObjectHandle foreign) } obj_copier.to_copy.clear(); - 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.")); + auto og = foreign.getObjGen(); + if (!obj_copier.object_map.count(og)) { + warn(damagedPDF("unexpected reference to /Pages object while copying foreign object; " + "replacing with null")); + return QPDFObjectHandle::newNull(); } - return result; + return obj_copier.object_map[foreign.getObjGen()]; } void diff --git a/qpdf/qtest/qpdf/copy-foreign-objects-25.out b/qpdf/qtest/qpdf/copy-foreign-objects-25.out index a34184ac..36b5bb0d 100644 --- a/qpdf/qtest/qpdf/copy-foreign-objects-25.out +++ b/qpdf/qtest/qpdf/copy-foreign-objects-25.out @@ -1,2 +1,2 @@ -WARNING: minimal.pdf (object 6 0, offset 556): Unexpected reference to /Pages object while copying foreign object. Replacing with Null object. +WARNING: minimal.pdf (object 6 0, offset 556): unexpected reference to /Pages object while copying foreign object; replacing with null test 25 done |