end of a compression block because we were ending at minus one byte
which is effectively the same as being at the end. The fix is to
check whether the uncompressed buffer has been fully filled and if so
we assume we have reached the end of the compression block. A big
thank you to Marcin Gibuła for the bug report, the assistance in
tracking down the bug and testing the fix.
- Fix a bug where we forgot to reset the data_size and initialized_size
in two error code paths.
- Fix a bug where an uncompressed block could be misdetected as a
compressed one if it was made up of multiple runs.
(Logical change 1.390)