From aeb66311c27804f6521df8acec83852075513979 Mon Sep 17 00:00:00 2001 From: m-holger Date: Sun, 2 Apr 2023 15:40:20 +0100 Subject: Use QPDFObjGen::set in QPDF::getCompressibleObjGens --- libqpdf/QPDF.cc | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index c7cc1370..c6720dd9 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -2511,7 +2511,7 @@ QPDF::getCompressibleObjGens() QPDFObjectHandle encryption_dict = this->m->trailer.getKey("/Encrypt"); QPDFObjGen encryption_dict_og = encryption_dict.getObjGen(); - std::set visited; + QPDFObjGen::set visited; std::list queue; queue.push_front(this->m->trailer); std::vector result; @@ -2520,7 +2520,7 @@ QPDF::getCompressibleObjGens() queue.pop_front(); if (obj.isIndirect()) { QPDFObjGen og = obj.getObjGen(); - if (visited.count(og)) { + if (!visited.add(og)) { QTC::TC("qpdf", "QPDF loop detected traversing objects"); continue; } @@ -2532,7 +2532,6 @@ QPDF::getCompressibleObjGens() obj.hasKey("/Contents")))) { result.push_back(og); } - visited.insert(og); } if (obj.isStream()) { QPDFObjectHandle dict = obj.getDict(); -- cgit v1.2.3-54-g00ecf