The value used before (last 11 bytes) was wrong; based on tests with the
MS implementation no translation can occur following an opcode starting
in the last 16 bytes of a data block.
Tested with two different length opcodes to make sure that it's the start
of the opcode that matters, not the start of the translated address.
Stored files with size exactly 4 GiB (4,294,967,296 bytes) are now
decompressed correctly.
+ Fixed a minor compatibility issue with the LZMS compressor and
+ decompressor. This is *not* the default compression type and was only
+ introduced in v1.6.0. In the unlikely event that you created a
+ LZMS-compressed WIM with v1.6.0 and a checksum error is reported when
+ applying it with v1.6.1, decompress it with v1.6.0 then compress it with
+ v1.6.1.
+
Paths passed to wimlib_extract_paths() and wimlib_iterate_dir_tree() may
now use either forwards or backwards slashes, as documented.
for (s32 i = 0; i < 65536; i++)
last_target_usages[i] = -LZMS_X86_MAX_GOOD_TARGET_OFFSET - 1;
- for (s32 i = 0; i < size - 11; ) {
+ for (s32 i = 0; i < size - 16; ) {
s32 max_trans_offset;
s32 n;