From 3cacb27a90cf332e7e978e925bb615c17f567ee3 Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sun, 9 May 2021 07:51:14 -0400 Subject: Performance fix on preserveObjectStreams --- libqpdf/QPDFWriter.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'libqpdf') diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc index 83349b48..23beee32 100644 --- a/libqpdf/QPDFWriter.cc +++ b/libqpdf/QPDFWriter.cc @@ -2361,6 +2361,12 @@ QPDFWriter::initializeSpecialStreams() void QPDFWriter::preserveObjectStreams() { + std::map omap; + QPDF::Writer::getObjectStreamData(this->m->pdf, omap); + if (omap.empty()) + { + return; + } // Our object_to_object_stream map has to map ObjGen -> ObjGen // since we may be generating object streams out of old objects // that have generation numbers greater than zero. However in an @@ -2380,8 +2386,6 @@ QPDFWriter::preserveObjectStreams() } QTC::TC("qpdf", "QPDFWriter preserve object streams", this->m->preserve_unreferenced_objects ? 0 : 1); - std::map omap; - QPDF::Writer::getObjectStreamData(this->m->pdf, omap); for (auto iter: omap) { QPDFObjGen og(iter.first, 0); -- cgit v1.2.3-54-g00ecf