Commit 634d9249866de10ae60b7261fe03203fe6b04974

Authored by m-holger
1 parent 2bb9e06d

In QPDFWriter::willFilterStream remember unfilterable streams

Showing 1 changed file with 4 additions and 3 deletions
libqpdf/QPDFWriter.cc
... ... @@ -1236,8 +1236,8 @@ QPDFWriter::writeTrailer(
1236 1236 bool
1237 1237 QPDFWriter::willFilterStream(
1238 1238 QPDFObjectHandle stream,
1239   - bool& compress_stream,
1240   - bool& is_metadata,
  1239 + bool& compress_stream, // out only
  1240 + bool& is_metadata, // out only
1241 1241 std::shared_ptr<Buffer>* stream_data)
1242 1242 {
1243 1243 compress_stream = false;
... ... @@ -1299,9 +1299,10 @@ QPDFWriter::willFilterStream(
1299 1299 throw std::runtime_error(
1300 1300 "error while getting stream data for " + stream.unparse() + ": " + e.what());
1301 1301 }
1302   - if (filter && (!filtered)) {
  1302 + if (filter && !filtered) {
1303 1303 // Try again
1304 1304 filter = false;
  1305 + stream.setFilterOnWrite(false);
1305 1306 } else {
1306 1307 break;
1307 1308 }
... ...