diff options
author | Jay Berkenbilt <ejb@ql.org> | 2022-09-13 17:20:28 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2022-09-13 17:20:28 +0200 |
commit | a0b1a181725721fe330c9b9abc6c16f93d28ac4d (patch) | |
tree | 5d6e243941670390154aea031398a1a605a12f72 /libqpdf/QPDF.cc | |
parent | c5f61fcbd33cc41a7741ccb300a7da28f19eab59 (diff) | |
download | qpdf-a0b1a181725721fe330c9b9abc6c16f93d28ac4d.tar.zst |
Remove redundant function calls
Diffstat (limited to 'libqpdf/QPDF.cc')
-rw-r--r-- | libqpdf/QPDF.cc | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index 06a7fba1..8a6831f9 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -1942,8 +1942,7 @@ QPDF::readObjectAtOffset( void QPDF::resolve(QPDFObjGen const& og) { - if (isCached(og) && !isUnresolved(og)) { - // We only need to resolve unresolved objects + if (!isUnresolved(og)) { return; } @@ -2173,9 +2172,8 @@ QPDF::makeIndirectObject(QPDFObjectHandle oh) QPDFObjectHandle QPDF::reserveObjectIfNotExists(QPDFObjGen const& og) { - if (!isCached(og) && !m->xref_table.count(og)) { - resolve(og); - m->obj_cache[og].object = QPDF_Reserved::create(); + if (!isCached(og) && m->xref_table.count(og) == 0) { + updateCache(og, QPDF_Reserved::create(), -1, -1); return newIndirect(og, m->obj_cache[og].object); } else { return getObject(og); @@ -2233,10 +2231,6 @@ QPDF::replaceObject(QPDFObjGen const& og, QPDFObjectHandle oh) throw std::logic_error( "QPDF::replaceObject called with indirect object handle"); } - // Force new object to appear in the cache - resolve(og); - - // Replace the object in the object cache updateCache(og, QPDFObjectHandle::ObjAccessor::getObject(oh), -1, -1); } |