From 56e9bcabe984acd4479ff7fef9a2a0ca669abc76 Mon Sep 17 00:00:00 2001 From: m-holger Date: Sun, 14 Aug 2022 01:05:32 +0100 Subject: Add methods QPDFObject::setObjGen and QPDFObject::resetObjGen Also, modify QPDFObject::swapWith to update the ObjGens of the swapped objects. Modify QPDF::newIndirect and QPDF::updateCache to keep object ObjGens up to date. --- include/qpdf/QPDFObject.hh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'include') diff --git a/include/qpdf/QPDFObject.hh b/include/qpdf/QPDFObject.hh index 198488dd..7bb7c6e1 100644 --- a/include/qpdf/QPDFObject.hh +++ b/include/qpdf/QPDFObject.hh @@ -133,7 +133,25 @@ class QPDFObject auto v = value; value = o->value; o->value = v; + auto og = value->og; + value->og = o->value->og; + o->value->og = og; } + + // The following two methods are for use by class QPDF only + void + setObjGen(QPDF* qpdf, QPDFObjGen const& og) + { + value->qpdf = qpdf; + value->og = og; + } + void + resetObjGen() + { + value->qpdf = nullptr; + value->og = QPDFObjGen(); + } + bool isUnresolved() { -- cgit v1.2.3-70-g09d2