XADMaster
XADMaster copied to clipboard
Faster CRC implementation breaks on big endian
Since 2da64b6b62be7532fb28621164d5213fe4f37fe4, the wrong CRC is calculated on a big endian machine (s390) at least for Gzip. You can see the effect at Debian's autopkgtest logs.
AFAICS, it's not better with this commit reverted. Tested with Leap 15.6 on s390x and unar 1.0.7
# unar archive-multivolume.part1.rar
archive-multivolume.part1.rar: RAR
file1-10kb (10240 B)... Failed! (Wrong checksum)
file2-10kb (10240 B)... Failed! (Wrong checksum)
file3-10kb (10240 B)... Failed! (Wrong checksum)
(the files are from https://invent.kde.org/utilities/ark/-/tree/master/autotests/kerfuffle/data)
edit The Debian patch is incomplete, XADCRCHandle.m also needs to be changed back to use XADCalculateCRC. Checksum is correct once done
Please see the linked PR for a better solution.