Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Misc questions/issues/suggestions #318

Open
vertigo220 opened this issue Apr 22, 2020 · 5 comments
Open

Misc questions/issues/suggestions #318

vertigo220 opened this issue Apr 22, 2020 · 5 comments

Comments

@vertigo220
Copy link

vertigo220 commented Apr 22, 2020

  1. Options > Compare > Folder > "Include unique subfolders contents" isn't explained anywhere. The help file simply says "TBD" and a web search as well as a search of these forums comes up with nothing. I would think most people would want it enabled, and that I certainly would, but I have no idea since I can only guess as to its purpose.

  2. Options > Compare > Folder > "Quick compare limit" -- Help file says disabled by default, but there's no enabled/disabled state of it, just the amount, which is set by default at 4MB, which is very low. Similarly, the binary compare limit is set to a very low limit of only 64MB, and the manual doesn't say anything about it ("TBD"). So it appears to me that WinMerge defaults to a disturbingly low threshold for considering files to be identical. I also wonder if this is why it always crashes when I try to do comparisons on large video files. It's also not clear what the difference is between them. Due to the lack of information about them and the fact the defaults seem to make WinMerge worse than useless, but potentially catastrophic by determining files to be identical which are, in fact, not, I've set both to 65536, though I have no idea if that's going to cause other issues. Then again, this post seems to contradict the help file, so I really have no idea what's going on with these settings.

  3. The message that often comes up when doing a comparison regarding different carriage return types isn't informative enough to be helpful. I never know which option I should choose, or if I should always use the same one, so I always have to uncheck the box to always do what I choose and check one way, then recheck the other way. So it really should provide more guidance and, assuming the same method shouldn't always be used (and if it should, why not just default to that), the checkbox to always use it should default to unchecked, so it doesn't have to be unchecked every time.

  4. There should be an option to add an additional delete submenu in the context menu to delete permanently, so the user can right-click and go to Delete... or Delete Permanently..., which would bypass the recycle bin.

  5. The Copy submenu in the context menu has options to both copy left/right to right/left and to ... (another location), but the move submenu only has options to move to ..., not to move to the other "side."

  6. Undo should be able to undo deletions (and copies/moves if it can't already).

  7. When the advanced shell integration/context menu is enabled, the menu entries should say "WinMerge - Compare To/..." or "compare To/... (WinMerge)" to help identify them. It's odd that the program's name was removed from them when it's used in the "basic" menu.

  8. When doing a three-way comparison, if two of the three are identical, it doesn't provide any indication of that. And if the user suspects that to be the case and wants to compare just those two, if they're the second and the third folders/files, you can't simply remove the first one and rerun the comparison. You have to remove it, then either swap 1 & 2 then 2 & 3 or swap 1 & 3. It should be able to just ignore 1, since it's blank, and compare 2 & 3. And, of course, it should inform the user that 2 & 3 (or 1 & 3 or 1 & 2) are identical in the first place.

Edit:

  1. There should be a way to select all of a specific type. For example, I'm comparing two directories and want to remove all identical files from one, so I'm left with just the differences to go through and further analyze. I tried showing only identical items and selecting all, but it selects all the directories, too, which would delete all their contents, identical and not. I tried using the column headers to sort by type, hoping all identical items would be together, but there are a lot of subdirectories, many with their own subdirectories, and so on, and they're still in place (i.e. not sorted by type) creating breaks between the groups of identical files, so I can't just click the first file and shift-click the last identical one, as that would also select the directories. Probably the best way to do this would be to just add a "Select >" or "Select..." menu item, in which the user can choose to select all identical, different, left only, or right only items. 2ND EDIT: I just realized I can uncheck tree view and do what I need, so this isn't necessary. That said, it would definitely be both easier and more obvious.

  2. Refresh should be renamed to Rescan, or at least add a warning before commencing. I just hit it thinking it would update the view, since it wasn't updating properly after deleting files (a whole other issue), and am now waiting another probably 20-30 minutes for it to rescan the compared directories.

@sdottaka
Copy link
Member

Thank you for your suggestions.

For the second, the "Binary compare limit" is misleading, so I think we need to improve the wording.

There is a "Binary contents method" that allows faster comparisons than the "Full contents method" and "Quick contents method."
The size specified in "Binary compare limit" means the file size to switch from "Full contents method" or "Quick contents method" to "Binary contents method" in order to compare large files at high speed.
It is not intended to treat large files as identical.

I want to reproduce the crash. Any advice?

@vertigo220
Copy link
Author

Perhaps something changed in a recent version, because it used to crash, but now that I've updated to the latest version, it hasn't done so (yet), but it also fails to do the comparison. If I select a moderately large mkv file--the one I tested is 160MB--it sits there for a while after clicking the compare button before popping up with a message saying "An error occurred while comparing the files" and the comparison screen with the content of the two files is in the background. When I click ok, it closes them. If I try a larger file--756MB tested, and of course the same happens with larger files--I instantly get the error

Cannot open file [Path]\[filename1]
System exception: Cannot map shared memory object: [Path]\[filename1]

and clicking ok I get the same error for the second file as well.

I've successfully compared 30+ GB files with HxD hex editor many times, yet I can't even compare a few hundred MB file with WinMerge, and have never been able to.

@vertigo220
Copy link
Author

I went through and attempted comparisons on a bunch of various sized mkv files. The largest one that successfully completed the comparison was 58MB. The smallest one to fail was 94MB. The largest to fail while trying to do a comparison was 187MB, and the smallest to fail immediately was 198MB. IOW, the breakdown is as follows:

Limit for successful comparison: approximately 58-94MB
Range for comparison attempt, though comparison fails: approximately (58-94)-(187-198)MB
Limit for even attempting comparison, beyond which it results in system exception error: between 187-198

@vertigo220
Copy link
Author

vertigo220 commented Apr 25, 2020

OP edited to add two more suggestions.

@vertigo220
Copy link
Author

New issue created for crashing problem due to its severity.

sdottaka added a commit that referenced this issue Dec 23, 2021
- Rename "Quick compare limit (MB)" to "Threshold for switching to quick compare (MB)"
- Rename "Binary compare limit (MB)" to "Threshold for switching to binary compare (MB)"
related to #318, #1092 and #1100
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants