Is there some magic required to obtain a "zlib sync flush" when using boost::iostreams::zlib_compressor
? Just invoking flush
on the filter, or strict_sync
on a filtering_ostream
containing it doesn't see to do the job (ie I want the compressor to flush enough that the decompressor can recover all the bytes consumed by the compressor so far, without closing the stream).
Looking at the header, there seem to be some "flush codes" defined (notably a sync_flush
) but it's unclear to me how they should be used (bearing in mind my compressor is just added into a filtering_ostream
).