Regression: Incorrectly shows 'no changes' for large portions of certain binary files!

Create issue
Issue #162 resolved
Ben created an issue

These two binary files have almost no data in common. They are both high-entropy compressed files. But when I compare them in the latest WinMerge, WinMerge incorrectly displays that they are almost the same, only the first few KB are different!

See attached Screenshot-Bug.png

The correct view should be this, as was shown in WinMerge 2.16.0:

See attached Screenshot-From-2.16.0.png

Confirmed works ok in 2.15.5 and 2.16.0, bug exists in 2.16.1, 2.16.2x64, 2.16.2x86

I know WinMerge is not designed for binary files, but this is a recent regression, and I consider this to be an important bug: I was about to delete several files thinking that they were duplicates differing only in header information after viewing the difference in WinMerge. I caught the problem when WinMerge showed me something impossible: two files differed in size by 3Mb, but WinMerge said only the first two short lines were the only differences between the files!

(I checked that the behavior occurs regardless of options 'Whitespace-Compare', 'Ignore blank lines', 'Ignore care', 'Ignore carriage return', 'Ignore codepage differences')

I have only been able to reproduce the problem in certain files. It affects nearly all of my thousands of files in the "sfArk" format (an old compression format for old soundfont files) but I was not able to repro with other files like renamed jpgs, gz, xz. I have attached two smaller files that exhibit the problem but can upload many, many more if it is helpful.

Comments (3)

  1. Log in to comment