diff options
author | m-holger <m-holger@kubitscheck.org> | 2022-09-04 01:58:53 +0200 |
---|---|---|
committer | m-holger <m-holger@kubitscheck.org> | 2022-09-04 11:41:18 +0200 |
commit | 9c86ba40d80ee3b58801dfe77e47fbc5a9dd6066 (patch) | |
tree | a438e346b4e124ba8babdec1effca4f8b9386a7d /libqpdf/QPDFObjectHandle.cc | |
parent | 6d2db68f2ecd1f8b0945bc982af7a9807436d881 (diff) | |
download | qpdf-9c86ba40d80ee3b58801dfe77e47fbc5a9dd6066.tar.zst |
Fix commit 805c1ad : Reset QPDFValue::qpdf and QPDFValue::og when ...
On destruction of the QPDF object replace all indirect object references
with direct nulls.
Remove all existing code to release resolved references.
Fixes performance issue due to interaction of resetting QPDFValue::qpdf and
og members and prior code.
Diffstat (limited to 'libqpdf/QPDFObjectHandle.cc')
-rw-r--r-- | libqpdf/QPDFObjectHandle.cc | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/libqpdf/QPDFObjectHandle.cc b/libqpdf/QPDFObjectHandle.cc index 83369b54..4b1ebe43 100644 --- a/libqpdf/QPDFObjectHandle.cc +++ b/libqpdf/QPDFObjectHandle.cc @@ -236,22 +236,6 @@ LastChar::getLastChar() return this->last_char; } -void -QPDFObjectHandle::releaseResolved() -{ - // Recursively break any resolved references to indirect objects. - // Do not cross over indirect object boundaries to avoid an - // infinite loop. This method may only be called during final - // destruction. See comments in QPDF::~QPDF(). - if (this->obj.get()) { - if (isIndirect()) { - this->obj = nullptr; - } else { - this->obj->releaseResolved(); - } - } -} - qpdf_object_type_e QPDFObjectHandle::getTypeCode() { |