Commit ae6e484e23e4f11878689be32bfcc6a28259b708
1 parent
356b582c
Change return type of QPDF::resolve to void
Showing
3 changed files
with
8 additions
and
10 deletions
include/qpdf/QPDF.hh
| ... | ... | @@ -846,10 +846,10 @@ class QPDF |
| 846 | 846 | friend class QPDFObjectHandle; |
| 847 | 847 | |
| 848 | 848 | private: |
| 849 | - static std::shared_ptr<QPDFObject> | |
| 849 | + static void | |
| 850 | 850 | resolve(QPDF* qpdf, QPDFObjGen const& og) |
| 851 | 851 | { |
| 852 | - return qpdf->resolve(og); | |
| 852 | + qpdf->resolve(og); | |
| 853 | 853 | } |
| 854 | 854 | }; |
| 855 | 855 | friend class Resolver; |
| ... | ... | @@ -1168,7 +1168,7 @@ class QPDF |
| 1168 | 1168 | std::string const& description, |
| 1169 | 1169 | QPDFObjGen const& exp_og, |
| 1170 | 1170 | QPDFObjGen& og); |
| 1171 | - std::shared_ptr<QPDFObject> resolve(QPDFObjGen const& og); | |
| 1171 | + void resolve(QPDFObjGen const& og); | |
| 1172 | 1172 | void resolveObjectsInStream(int obj_stream_number); |
| 1173 | 1173 | void stopOnError(std::string const& message); |
| 1174 | 1174 | QPDFObjectHandle reserveObjectIfNotExists(QPDFObjGen const& og); | ... | ... |
libqpdf/QPDF.cc
| ... | ... | @@ -1926,12 +1926,12 @@ QPDF::readObjectAtOffset( |
| 1926 | 1926 | return oh; |
| 1927 | 1927 | } |
| 1928 | 1928 | |
| 1929 | -std::shared_ptr<QPDFObject> | |
| 1929 | +void | |
| 1930 | 1930 | QPDF::resolve(QPDFObjGen const& og) |
| 1931 | 1931 | { |
| 1932 | 1932 | if (isCached(og) && !isUnresolved(og)) { |
| 1933 | 1933 | // We only need to resolve unresolved objects |
| 1934 | - return m->obj_cache[og].object; | |
| 1934 | + return; | |
| 1935 | 1935 | } |
| 1936 | 1936 | |
| 1937 | 1937 | // Check object cache before checking xref table. This allows us |
| ... | ... | @@ -1947,9 +1947,8 @@ QPDF::resolve(QPDFObjGen const& og) |
| 1947 | 1947 | "", |
| 1948 | 1948 | this->m->file->getLastOffset(), |
| 1949 | 1949 | ("loop detected resolving object " + og.unparse(' '))); |
| 1950 | - | |
| 1951 | 1950 | updateCache(og, QPDF_Null::create(), -1, -1); |
| 1952 | - return m->obj_cache[og].object; | |
| 1951 | + return; | |
| 1953 | 1952 | } |
| 1954 | 1953 | ResolveRecorder rr(this, og); |
| 1955 | 1954 | |
| ... | ... | @@ -1998,11 +1997,10 @@ QPDF::resolve(QPDFObjGen const& og) |
| 1998 | 1997 | updateCache(og, QPDF_Null::create(), -1, -1); |
| 1999 | 1998 | } |
| 2000 | 1999 | |
| 2001 | - std::shared_ptr<QPDFObject> result(this->m->obj_cache[og].object); | |
| 2000 | + auto result(this->m->obj_cache[og].object); | |
| 2002 | 2001 | if (!result->hasDescription()) { |
| 2003 | 2002 | result->setDescription(this, ("object " + og.unparse(' '))); |
| 2004 | 2003 | } |
| 2005 | - return result; | |
| 2006 | 2004 | } |
| 2007 | 2005 | |
| 2008 | 2006 | void | ... | ... |
libqpdf/QPDFObjectHandle.cc
| ... | ... | @@ -2596,7 +2596,7 @@ QPDFObjectHandle::dereference() |
| 2596 | 2596 | return false; |
| 2597 | 2597 | } |
| 2598 | 2598 | if (this->obj->isUnresolved()) { |
| 2599 | - this->obj = QPDF::Resolver::resolve(this->qpdf, getObjGen()); | |
| 2599 | + QPDF::Resolver::resolve(this->qpdf, getObjGen()); | |
| 2600 | 2600 | } |
| 2601 | 2601 | return true; |
| 2602 | 2602 | } | ... | ... |