Commit 5c7af348a01f1bac91fbd3d85f732cd9d46f8e93
Committed by
GitHub
Merge pull request #1520 from m-holger/rr
Refactor QPDF::ResolveRecorder
Showing
2 changed files
with
19 additions
and
19 deletions
libqpdf/QPDF_objects.cc
| ... | ... | @@ -81,6 +81,24 @@ namespace |
| 81 | 81 | }; |
| 82 | 82 | } // namespace |
| 83 | 83 | |
| 84 | +class QPDF::ResolveRecorder final | |
| 85 | +{ | |
| 86 | + public: | |
| 87 | + ResolveRecorder(QPDF& qpdf, QPDFObjGen const& og) : | |
| 88 | + qpdf(qpdf), | |
| 89 | + iter(qpdf.m->resolving.insert(og).first) | |
| 90 | + { | |
| 91 | + } | |
| 92 | + ~ResolveRecorder() | |
| 93 | + { | |
| 94 | + qpdf.m->resolving.erase(iter); | |
| 95 | + } | |
| 96 | + | |
| 97 | + private: | |
| 98 | + QPDF& qpdf; | |
| 99 | + std::set<QPDFObjGen>::const_iterator iter; | |
| 100 | +}; | |
| 101 | + | |
| 84 | 102 | bool |
| 85 | 103 | QPDF::findStartxref() |
| 86 | 104 | { |
| ... | ... | @@ -1593,7 +1611,7 @@ QPDF::resolve(QPDFObjGen og) |
| 1593 | 1611 | updateCache(og, QPDFObject::create<QPDF_Null>(), -1, -1); |
| 1594 | 1612 | return m->obj_cache[og].object; |
| 1595 | 1613 | } |
| 1596 | - ResolveRecorder rr(this, og); | |
| 1614 | + ResolveRecorder rr(*this, og); | |
| 1597 | 1615 | |
| 1598 | 1616 | if (m->xref_table.contains(og)) { |
| 1599 | 1617 | QPDFXRefEntry const& entry = m->xref_table[og]; | ... | ... |
libqpdf/qpdf/QPDF_private.hh
| ... | ... | @@ -563,24 +563,6 @@ class QPDF::JobSetter |
| 563 | 563 | } |
| 564 | 564 | }; |
| 565 | 565 | |
| 566 | -class QPDF::ResolveRecorder | |
| 567 | -{ | |
| 568 | - public: | |
| 569 | - ResolveRecorder(QPDF* qpdf, QPDFObjGen const& og) : | |
| 570 | - qpdf(qpdf), | |
| 571 | - iter(qpdf->m->resolving.insert(og).first) | |
| 572 | - { | |
| 573 | - } | |
| 574 | - virtual ~ResolveRecorder() | |
| 575 | - { | |
| 576 | - this->qpdf->m->resolving.erase(iter); | |
| 577 | - } | |
| 578 | - | |
| 579 | - private: | |
| 580 | - QPDF* qpdf; | |
| 581 | - std::set<QPDFObjGen>::const_iterator iter; | |
| 582 | -}; | |
| 583 | - | |
| 584 | 566 | inline bool |
| 585 | 567 | QPDF::reconstructed_xref() const |
| 586 | 568 | { | ... | ... |