bsdiff
bsdiff copied to clipboard
Provide more information to writedata callback.
Forwards information about what data block is being written to writedata() callback.
It does nothing for current implementation but it becomes very useful when using bsdiff as a library with custom stream processing.
The mendsley's implementation uses single interleaved data stream which has its advantages but creates larger patch files than vanilla bsdiff. This change allows us to easily generate both mendsley's and vanilla bsdiff patches as needed. In addition, thanks to this change, it is possible to experiment with stream compression and use e.g. LZMA for extra data stream and keep bzip2 for control a diff streams. In my testing, this generates smallest possible patch files.