diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc index 2671322..22d0b6e 100644 --- a/libqpdf/QPDFWriter.cc +++ b/libqpdf/QPDFWriter.cc @@ -882,8 +882,7 @@ QPDFWriter::writeTrailer(trailer_e which, int size, bool xref_stream, writeString(" /Prev "); qpdf_offset_t pos = this->pipeline->getCount(); writeString(QUtil::int_to_string(prev)); - // XXX - int nspaces = (int)(pos - this->pipeline->getCount() + 11); + int nspaces = (int)(pos - this->pipeline->getCount() + 21); assert(nspaces >= 0); writePad(nspaces); } @@ -2122,9 +2121,10 @@ QPDFWriter::writeLinearized() writeHeader(); // Part 2: linearization parameter dictionary. Save enough - // space to write real dictionary. 150 characters is enough + // space to write real dictionary. 200 characters is enough // space if all numerical values in the parameter dictionary - // are 10 digits long plus a few extra characters for safety. + // that contain offsets are 20 digits long plus a few extra + // characters for safety. qpdf_offset_t pos = this->pipeline->getCount(); openObject(lindict_id); @@ -2154,7 +2154,7 @@ QPDFWriter::writeLinearized() } writeString(" >>"); closeObject(lindict_id); - static int const pad = 150; + static int const pad = 200; int spaces = (pos - this->pipeline->getCount() + pad); assert(spaces >= 0); writePad(spaces); diff --git a/qpdf/qtest/qpdf/c-linearized.pdf b/qpdf/qtest/qpdf/c-linearized.pdf index 0768023..dbe62ff 100644 --- a/qpdf/qtest/qpdf/c-linearized.pdf +++ b/qpdf/qtest/qpdf/c-linearized.pdf diff --git a/qpdf/qtest/qpdf/lin-special.disable.exp b/qpdf/qtest/qpdf/lin-special.disable.exp index 4c2173d..fbafd01 100644 --- a/qpdf/qtest/qpdf/lin-special.disable.exp +++ b/qpdf/qtest/qpdf/lin-special.disable.exp diff --git a/qpdf/qtest/qpdf/lin-special.generate.exp b/qpdf/qtest/qpdf/lin-special.generate.exp index ad3df5f..c810f02 100644 --- a/qpdf/qtest/qpdf/lin-special.generate.exp +++ b/qpdf/qtest/qpdf/lin-special.generate.exp diff --git a/qpdf/qtest/qpdf/lin-special.preserve.exp b/qpdf/qtest/qpdf/lin-special.preserve.exp index 4c2173d..fbafd01 100644 --- a/qpdf/qtest/qpdf/lin-special.preserve.exp +++ b/qpdf/qtest/qpdf/lin-special.preserve.exp diff --git a/qpdf/qtest/qpdf/object-stream.disable.exp b/qpdf/qtest/qpdf/object-stream.disable.exp index 3b5e10f..e2ee713 100644 --- a/qpdf/qtest/qpdf/object-stream.disable.exp +++ b/qpdf/qtest/qpdf/object-stream.disable.exp diff --git a/qpdf/qtest/qpdf/object-stream.generate.exp b/qpdf/qtest/qpdf/object-stream.generate.exp index 66618d2..87e2f5d 100644 --- a/qpdf/qtest/qpdf/object-stream.generate.exp +++ b/qpdf/qtest/qpdf/object-stream.generate.exp diff --git a/qpdf/qtest/qpdf/object-stream.preserve.exp b/qpdf/qtest/qpdf/object-stream.preserve.exp index 66618d2..87e2f5d 100644 --- a/qpdf/qtest/qpdf/object-stream.preserve.exp +++ b/qpdf/qtest/qpdf/object-stream.preserve.exp