Commit 078cf9bf90ec22ba141ebf379e6993b491c2995d
1 parent
b8ccbff4
newline before endstream fix for object streams (fixes #205)
Showing
4 changed files
with
13 additions
and
1 deletions
ChangeLog
| 1 | +2018-05-12 Jay Berkenbilt <ejb@ql.org> | |
| 2 | + | |
| 3 | + * In newline before endstream mode, an extra newline was not | |
| 4 | + inserted prior to the endstream that ends object streams. | |
| 5 | + Fixes #205. | |
| 6 | + | |
| 1 | 7 | 2018-04-15 Jay Berkenbilt <ejb@ql.org> |
| 2 | 8 | |
| 3 | 9 | * Arbitrarily limit the depth of data structures represented by | ... | ... |
libqpdf/QPDFWriter.cc
| ... | ... | @@ -1907,6 +1907,10 @@ QPDFWriter::writeObjectStream(QPDFObjectHandle object) |
| 1907 | 1907 | pushEncryptionFilter(); |
| 1908 | 1908 | writeBuffer(stream_buffer); |
| 1909 | 1909 | popPipelineStack(); |
| 1910 | + if (this->m->newline_before_endstream) | |
| 1911 | + { | |
| 1912 | + writeString("\n"); | |
| 1913 | + } | |
| 1910 | 1914 | writeString("endstream"); |
| 1911 | 1915 | this->m->cur_data_key.clear(); |
| 1912 | 1916 | closeObject(new_id); | ... | ... |
qpdf/qtest/qpdf.test
| ... | ... | @@ -964,7 +964,7 @@ $td->runtest("check output", |
| 964 | 964 | show_ntests(); |
| 965 | 965 | # ---------- |
| 966 | 966 | $td->notify("--- Newline before endstream ---"); |
| 967 | -$n_tests += 10; | |
| 967 | +$n_tests += 12; | |
| 968 | 968 | |
| 969 | 969 | # From issue 133, http://verapdf.org/software/ is an open source |
| 970 | 970 | # package that can verify PDF/A compliance. This could potentially be |
| ... | ... | @@ -975,6 +975,8 @@ foreach my $d ( |
| 975 | 975 | ['--qdf', 'qdf', 'qdf'], |
| 976 | 976 | ['--newline-before-endstream', 'newline', 'nl'], |
| 977 | 977 | ['--qdf --newline-before-endstream', 'newline and qdf', 'nl-qdf'], |
| 978 | + ['--object-streams=generate --newline-before-endstream', | |
| 979 | + 'newline and object streams', 'nl-objstm'], | |
| 978 | 980 | ) |
| 979 | 981 | { |
| 980 | 982 | my ($flags, $description, $suffix) = @$d; | ... | ... |
qpdf/qtest/qpdf/newline-before-endstream-nl-objstm.pdf
0 → 100644
No preview for this file type