aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2017-08-12 02:57:05 +0200
committerJay Berkenbilt <ejb@ql.org>2017-08-12 02:57:05 +0200
commit36b3fe5af761b7032a506808cf6ce6d37c297bfc (patch)
treedfe58edc693033677cc16988c59151315fbda27b /libqpdf
parent46611f0710fa08f1a90134a84cfccec3a1e49f94 (diff)
downloadqpdf-36b3fe5af761b7032a506808cf6ce6d37c297bfc.tar.zst
Fix --newline-before-endstream option (fixes #133)
Add a newline unconditionally before endstream even if a newline was already written as part of the stream data.
Diffstat (limited to 'libqpdf')
-rw-r--r--libqpdf/QPDFWriter.cc22
1 files changed, 10 insertions, 12 deletions
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc
index 8d5f0682..de4fa349 100644
--- a/libqpdf/QPDFWriter.cc
+++ b/libqpdf/QPDFWriter.cc
@@ -1587,18 +1587,16 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
char last_char = this->pipeline->getLastChar();
popPipelineStack();
- if (this->qdf_mode || this->newline_before_endstream)
- {
- if (last_char != '\n')
- {
- writeString("\n");
- this->added_newline = true;
- }
- else
- {
- this->added_newline = false;
- }
- }
+ if (this->newline_before_endstream ||
+ (this->qdf_mode && (last_char != '\n')))
+ {
+ writeString("\n");
+ this->added_newline = true;
+ }
+ else
+ {
+ this->added_newline = false;
+ }
writeString("endstream");
}
else if (object.isString())