Commit 8b4afa428e9caa1a34cad434dfe8a3e01e5a24d3

Authored by m-holger
1 parent afd35f9a

Revert making second parameter of QPDFObjGen::QPDFObjGen optional

Also, change test for QPDFObjGen::isIndirect to obj != 0.
Delete comment from commit afd35f9.
include/qpdf/QPDFObjGen.hh
... ... @@ -38,7 +38,7 @@ class QPDFObjGen
38 38 {
39 39 }
40 40 QPDF_DLL
41   - explicit QPDFObjGen(int obj, int gen = 0) :
  41 + explicit QPDFObjGen(int obj, int gen) :
42 42 obj(obj),
43 43 gen(gen)
44 44 {
... ... @@ -77,7 +77,7 @@ class QPDFObjGen
77 77 bool
78 78 isIndirect() const
79 79 {
80   - return obj > 0;
  80 + return obj != 0;
81 81 }
82 82 QPDF_DLL
83 83 std::string unparse(char separator = ',') const;
... ...
include/qpdf/QPDFObjectHandle.hh
... ... @@ -123,7 +123,6 @@ class QPDFObjectHandle
123 123 Pipeline* pipeline,
124 124 bool suppress_warnings,
125 125 bool will_retry);
126   - // The following two overloads are deprecated.
127 126 QPDF_DLL virtual void
128 127 provideStreamData(int objid, int generation, Pipeline* pipeline);
129 128 QPDF_DLL virtual bool provideStreamData(
... ...
libqpdf/QPDF.cc
... ... @@ -1051,7 +1051,7 @@ QPDF::read_xrefStream(qpdf_offset_t xref_offset)
1051 1051 QPDFObjectHandle xref_obj;
1052 1052 try {
1053 1053 xref_obj = readObjectAtOffset(
1054   - false, xref_offset, "xref stream", QPDFObjGen(), x_og);
  1054 + false, xref_offset, "xref stream", QPDFObjGen(0, 0), x_og);
1055 1055 } catch (QPDFExc&) {
1056 1056 // ignore -- report error below
1057 1057 }
... ... @@ -1333,7 +1333,7 @@ QPDF::insertXrefEntry(int obj, int f0, qpdf_offset_t f1, int f2, bool overwrite)
1333 1333 break;
1334 1334  
1335 1335 case 2:
1336   - this->m->xref_table[QPDFObjGen(obj)] = QPDFXRefEntry(f0, f1, f2);
  1336 + this->m->xref_table[QPDFObjGen(obj, 0)] = QPDFXRefEntry(f0, f1, f2);
1337 1337 break;
1338 1338  
1339 1339 default:
... ... @@ -2110,7 +2110,7 @@ QPDF::resolveObjectsInStream(int obj_stream_number)
2110 2110 // xref table and only cache what would actually be resolved here.
2111 2111 for (auto const& iter: offsets) {
2112 2112 int obj = iter.first;
2113   - QPDFObjGen og(obj);
  2113 + QPDFObjGen og(obj, 0);
2114 2114 QPDFXRefEntry const& entry = this->m->xref_table[og];
2115 2115 if ((entry.getType() == 2) &&
2116 2116 (entry.getObjStreamNumber() == obj_stream_number)) {
... ...
libqpdf/QPDF_linearization.cc
... ... @@ -137,8 +137,8 @@ QPDF::isLinearized()
137 137 return false;
138 138 }
139 139  
140   - QPDFObjectHandle candidate =
141   - QPDFObjectHandle::Factory::newIndirect(this, QPDFObjGen(lindict_obj));
  140 + QPDFObjectHandle candidate = QPDFObjectHandle::Factory::newIndirect(
  141 + this, QPDFObjGen(lindict_obj, 0));
142 142 if (!candidate.isDictionary()) {
143 143 return false;
144 144 }
... ... @@ -327,7 +327,7 @@ QPDF::readHintStream(Pipeline& pl, qpdf_offset_t offset, size_t length)
327 327 {
328 328 QPDFObjGen og;
329 329 QPDFObjectHandle H = readObjectAtOffset(
330   - false, offset, "linearization hint stream", QPDFObjGen(), og);
  330 + false, offset, "linearization hint stream", QPDFObjGen(0, 0), og);
331 331 ObjCache& oc = this->m->obj_cache[og];
332 332 qpdf_offset_t min_end_offset = oc.end_before_space;
333 333 qpdf_offset_t max_end_offset = oc.end_after_space;
... ... @@ -706,7 +706,7 @@ QPDF::getUncompressedObject(
706 706 return obj;
707 707 } else {
708 708 int repl = (*(object_stream_data.find(obj.getObjectID()))).second;
709   - return getObjectByObjGen(QPDFObjGen(repl));
  709 + return getObjectByObjGen(QPDFObjGen(repl, 0));
710 710 }
711 711 }
712 712  
... ...