Commit 83443c116d84494da3ee859f0115898118769dca
1 parent
b5a57800
Make ObjCache of inner class of QPDF::Objects and rename to Entry
Showing
4 changed files
with
17 additions
and
19 deletions
include/qpdf/QPDF.hh
libqpdf/QPDF_objects.cc
| ... | ... | @@ -747,8 +747,8 @@ Xref_table::read_stream(qpdf_offset_t xref_offset) |
| 747 | 747 | QPDFObjGen x_og; |
| 748 | 748 | QPDFObjectHandle xref_obj; |
| 749 | 749 | try { |
| 750 | - xref_obj = qpdf.objects().read( | |
| 751 | - false, xref_offset, "xref stream", QPDFObjGen(0, 0), x_og, true); | |
| 750 | + xref_obj = | |
| 751 | + objects.read(false, xref_offset, "xref stream", QPDFObjGen(0, 0), x_og, true); | |
| 752 | 752 | } catch (QPDFExc&) { |
| 753 | 753 | // ignore -- report error below |
| 754 | 754 | } |
| ... | ... | @@ -1693,7 +1693,7 @@ Objects::update_table(QPDFObjGen og, const std::shared_ptr<QPDFObject>& object) |
| 1693 | 1693 | auto& cache = obj_cache[og]; |
| 1694 | 1694 | cache.object->assign(object); |
| 1695 | 1695 | } else { |
| 1696 | - obj_cache[og] = ObjCache(object); | |
| 1696 | + obj_cache[og] = Entry(object); | |
| 1697 | 1697 | } |
| 1698 | 1698 | } |
| 1699 | 1699 | |
| ... | ... | @@ -1723,7 +1723,7 @@ QPDFObjectHandle |
| 1723 | 1723 | Objects::make_indirect(std::shared_ptr<QPDFObject> const& obj) |
| 1724 | 1724 | { |
| 1725 | 1725 | QPDFObjGen next{next_id()}; |
| 1726 | - obj_cache[next] = ObjCache(obj); | |
| 1726 | + obj_cache[next] = Entry(obj); | |
| 1727 | 1727 | return qpdf.newIndirect(next, obj_cache[next].object); |
| 1728 | 1728 | } |
| 1729 | 1729 | ... | ... |
libqpdf/qpdf/QPDF_objects.hh
| ... | ... | @@ -375,6 +375,18 @@ class QPDF::Objects |
| 375 | 375 | qpdf_offset_t first_item_offset_{0}; // actual value from file |
| 376 | 376 | }; // Xref_table; |
| 377 | 377 | |
| 378 | + struct Entry | |
| 379 | + { | |
| 380 | + Entry() = default; | |
| 381 | + | |
| 382 | + Entry(std::shared_ptr<QPDFObject> object) : | |
| 383 | + object(std::move(object)) | |
| 384 | + { | |
| 385 | + } | |
| 386 | + | |
| 387 | + std::shared_ptr<QPDFObject> object; | |
| 388 | + }; | |
| 389 | + | |
| 378 | 390 | Objects(QPDF& qpdf, QPDF::Members* m, InputSource* const& file) : |
| 379 | 391 | qpdf(qpdf), |
| 380 | 392 | file(file), |
| ... | ... | @@ -407,7 +419,7 @@ class QPDF::Objects |
| 407 | 419 | return xref.trailer(); |
| 408 | 420 | } |
| 409 | 421 | |
| 410 | - std::map<QPDFObjGen, ObjCache> obj_cache; | |
| 422 | + std::map<QPDFObjGen, Entry> obj_cache; | |
| 411 | 423 | |
| 412 | 424 | QPDFObjectHandle readObjectInStream(std::shared_ptr<InputSource>& input, int obj); |
| 413 | 425 | QPDFObjectHandle read( | ... | ... |
libqpdf/qpdf/QPDF_private.hh
| ... | ... | @@ -72,19 +72,6 @@ class QPDF::Pipe |
| 72 | 72 | } |
| 73 | 73 | }; |
| 74 | 74 | |
| 75 | -class QPDF::ObjCache | |
| 76 | -{ | |
| 77 | - public: | |
| 78 | - ObjCache() = default; | |
| 79 | - | |
| 80 | - ObjCache(std::shared_ptr<QPDFObject> object) : | |
| 81 | - object(object) | |
| 82 | - { | |
| 83 | - } | |
| 84 | - | |
| 85 | - std::shared_ptr<QPDFObject> object; | |
| 86 | -}; | |
| 87 | - | |
| 88 | 75 | class QPDF::ObjCopier |
| 89 | 76 | { |
| 90 | 77 | public: | ... | ... |