Commit fedd42191f0eec498ba1c22ef13beae0f37387aa
1 parent
5d6ee83e
Change QPDF::copyForeignObject to return a null object when called with a /Pages…
… object (fixes #1011)
Showing
1 changed file
with
7 additions
and
1 deletions
libqpdf/QPDF.cc
| ... | ... | @@ -2026,7 +2026,13 @@ QPDF::copyForeignObject(QPDFObjectHandle foreign) |
| 2026 | 2026 | } |
| 2027 | 2027 | obj_copier.to_copy.clear(); |
| 2028 | 2028 | |
| 2029 | - return obj_copier.object_map[foreign.getObjGen()]; | |
| 2029 | + auto& result = obj_copier.object_map[foreign.getObjGen()]; | |
| 2030 | + if (!result.isInitialized()) { | |
| 2031 | + result = QPDFObjectHandle::newNull(); | |
| 2032 | + warn(damagedPDF("Unexpected reference to /Pages object while copying foreign object. " | |
| 2033 | + "Replacing with Null object.")); | |
| 2034 | + } | |
| 2035 | + return result; | |
| 2030 | 2036 | } |
| 2031 | 2037 | |
| 2032 | 2038 | void | ... | ... |