Commit 788f6f7769c9f0b4b439079d87bbc180860fa14c

Authored by Jay Berkenbilt
1 parent ee93b24d

fix small logic error surrounding adding newlines; in practice, the logic error …

…would probably never manifest itself without other code changes
Showing 1 changed file with 3 additions and 3 deletions
libqpdf/QPDFWriter.cc
... ... @@ -1102,11 +1102,12 @@ QPDFWriter::unparseObject(QPDFObjectHandle object, int level,
1102 1102 writeString("\nstream\n");
1103 1103 pushEncryptionFilter();
1104 1104 writeBuffer(stream_data);
  1105 + char last_char = this->pipeline->getLastChar();
1105 1106 popPipelineStack();
1106 1107  
1107 1108 if (this->qdf_mode)
1108 1109 {
1109   - if (this->pipeline->getLastChar() != '\n')
  1110 + if (last_char != '\n')
1110 1111 {
1111 1112 writeString("\n");
1112 1113 this->added_newline = true;
... ... @@ -1776,9 +1777,7 @@ QPDFWriter::writeHintStream(int hint_id)
1776 1777 openObject(hint_id);
1777 1778 setDataKey(hint_id);
1778 1779  
1779   - unsigned char* hs = hint_buffer->getBuffer();
1780 1780 unsigned long hlen = hint_buffer->getSize();
1781   - char last_char = hs[hlen - 1];
1782 1781  
1783 1782 writeString("<< /Filter /FlateDecode /S ");
1784 1783 writeString(QUtil::int_to_string(S));
... ... @@ -1798,6 +1797,7 @@ QPDFWriter::writeHintStream(int hint_id)
1798 1797 }
1799 1798 pushEncryptionFilter();
1800 1799 writeBuffer(hint_buffer);
  1800 + char last_char = this->pipeline->getLastChar();
1801 1801 popPipelineStack();
1802 1802  
1803 1803 if (last_char != '\n')
... ...