aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--libqpdf/QPDFWriter.cc5
-rw-r--r--qpdf/qtest/qpdf/good17-not-recompressed.pdfbin9147 -> 10621 bytes
-rw-r--r--qpdf/qtest/qpdf/newline-before-endstream-nl-objstm.pdfbin1203 -> 1730 bytes
4 files changed, 7 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 19be25a3..35a41ec0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2023-12-20 Jay Berkenbilt <ejb@ql.org>
+
+ * Bug fix: with --compress-streams=n, don't compress object or
+ XRef streams.
+
2023-12-16 Jay Berkenbilt <ejb@ql.org>
* Add new C++ functions "qpdf_c_get_qpdf" and "qpdf_c_wrap" to
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc
index 664ea5ff..3085e6c0 100644
--- a/libqpdf/QPDFWriter.cc
+++ b/libqpdf/QPDFWriter.cc
@@ -1658,8 +1658,7 @@ QPDFWriter::writeObjectStream(QPDFObjectHandle object)
// Set up a stream to write the stream data into a buffer.
Pipeline* next = pushPipeline(new Pl_Buffer("object stream"));
- if ((m->compress_streams || (m->stream_decode_level == qpdf_dl_none)) &&
- (!m->qdf_mode)) {
+ if (m->compress_streams && !m->qdf_mode) {
compressed = true;
next =
pushPipeline(new Pl_Flate("compress object stream", next, Pl_Flate::a_deflate));
@@ -2417,7 +2416,7 @@ QPDFWriter::writeXRefStream(
Pipeline* p = pushPipeline(new Pl_Buffer("xref stream"));
bool compressed = false;
- if ((m->compress_streams || (m->stream_decode_level == qpdf_dl_none)) && (!m->qdf_mode)) {
+ if (m->compress_streams && !m->qdf_mode) {
compressed = true;
if (!skip_compression) {
// Write the stream dictionary for compression but don't actually compress. This helps
diff --git a/qpdf/qtest/qpdf/good17-not-recompressed.pdf b/qpdf/qtest/qpdf/good17-not-recompressed.pdf
index b6e3a530..1f4924f7 100644
--- a/qpdf/qtest/qpdf/good17-not-recompressed.pdf
+++ b/qpdf/qtest/qpdf/good17-not-recompressed.pdf
Binary files differ
diff --git a/qpdf/qtest/qpdf/newline-before-endstream-nl-objstm.pdf b/qpdf/qtest/qpdf/newline-before-endstream-nl-objstm.pdf
index f412feda..13752cba 100644
--- a/qpdf/qtest/qpdf/newline-before-endstream-nl-objstm.pdf
+++ b/qpdf/qtest/qpdf/newline-before-endstream-nl-objstm.pdf
Binary files differ