From b3d71e1f58aa767dfa8eac3e723ecc164131f306 Mon Sep 17 00:00:00 2001 From: m-holger Date: Mon, 26 Sep 2022 18:27:25 +0100 Subject: Add private overload of QPDF::makeIndirectObject taking a QPDFObject shared_ptr --- libqpdf/QPDF.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'libqpdf/QPDF.cc') diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index 5cad3caf..a870d783 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -1977,7 +1977,7 @@ QPDF::isUnresolved(QPDFObjGen const& og) } QPDFObjectHandle -QPDF::makeIndirectObject(QPDFObjectHandle oh) +QPDF::makeIndirectObject(std::shared_ptr const& obj) { int max_objid = toI(getObjectCount()); if (max_objid == std::numeric_limits::max()) { @@ -1985,11 +1985,16 @@ QPDF::makeIndirectObject(QPDFObjectHandle oh) "max object id is too high to create new objects"); } QPDFObjGen next(max_objid + 1, 0); - m->obj_cache[next] = - ObjCache(QPDFObjectHandle::ObjAccessor::getObject(oh), -1, -1); + m->obj_cache[next] = ObjCache(obj, -1, -1); return newIndirect(next, m->obj_cache[next].object); } +QPDFObjectHandle +QPDF::makeIndirectObject(QPDFObjectHandle oh) +{ + return makeIndirectObject(QPDFObjectHandle::ObjAccessor::getObject(oh)); +} + QPDFObjectHandle QPDF::reserveObjectIfNotExists(QPDFObjGen const& og) { -- cgit v1.2.3-54-g00ecf