Release 3.2.0 - May 2008

SourceGear DiffMerge 3.2 is available as a FREE stand-alone utility application.

New features introduced in 3.2.0:

  • Added the ability to switch between vertical and horizontal panel layout in File Diff and File Merge windows. Previously, file panels in these windows were shown side-by-side with a vertical splitter between them. You can now toggle between that mode and horizontal mode, where panels are shown above and below. This is useful when your files have long lines and you can’t see the entire line without horizontally scrolling.
  • We now detect binary files (files containing a NUL byte) and give a warning and stop. This keeps us from showing artifically truncated files in the windows.
  • Made the “multi-line intra-line analysis” adjustable for performance reasons. A setting for this can be found on the “Detail Level” page of the Options dialog. There is a large discussion on this feature in the DiffMerge manual.
  • Added External Tool feature. DiffMerge can now be configured to invoke an external, third-party tool for various types of files (based upon the file suffixes). This allows you, for example, to select special tools for XML or Word documents. You can then double-click on a pair of files in a folder window and have the external tool launched to compare them. For more details see the DiffMerge Manual.

Other Improvements:

  • Use the suffix of the /result pathname (in addition to the suffixes of the 3 input pathnames) when searching for an ruleset. This helps in the case when 3 temp files are used as input to a merge.
  • Use the suffix of the /result pathname (in additional to the suffixes of the 3 input pathnames) when searching for an external tool. This helps in the case when 3 temp files are used as input to a merge.
  • Added work-around on Windows for Win32 TextOut() limitations when drawing extremenly long (>4096 character) lines in the file drawing code.
  • Added alternate cut/copy/paste keyboard shortcuts for Windows and Linux versions. We now support Ctrl+Insert, Shift+Insert, and Shift+Delete.
  • Added code to Mac version to try to bring DiffMerge window to the foreground when we are launched from the command line.
  • Added “files are different/same” information to the “binary files cannot be loaded” dialog by doing a raw comparison of the files.
  • Turned off EXPAND_ENV_VARS in the Windows version so that ‘$’ characters in pathnames are not interpreted. This was causing problems when dollar signs and backslashes were both present.
  • Fixed problem in “Shell Extension\Approved” registry settings that was preventing explorer integration from working on some Windows systems.
  • Allow /dev/null as command line argument on Linux and Mac versions. This was failing because the file-or-folder tests were failing because /dev/null is a not a regular file.
  • Fixed crash when DiffMerge was given a pathname to a non-existent file and the pathname contained a ‘%’ character.
  • Added registry keys containing the path to the installation directory and the DiffMerge executable: HKLM\SOFTWARE\SourceGear\SourceGear DiffMerge\InstallDir and HKLM\SOFTWARE\SourceGear\SourceGear DiffMerge\Location
  • Fixed how ruleset chose the actual character encoding for a set of files when it was set to “Use System Local/Default Encoding”. Previously we were taking the value from the (grayed) “Named Encoding” field when we shouldn’t be.
  • Upgraded DiffMerge to use wxWidgets version 2.8.7 (from 2.8.3). This fixes the crash in glibc reported on Ubuntu when accessing the menu, so you shouldn’t need the G_SLICE workaround.
  • Fixed crash on Windows when clicking and dragging the black bars in the glance window to the top of the screen.
  • Fixed problems with how we create the Shell/Explorer Integration context menus on Windows that was in certain circumstances causing files to appear multiple times in the context menu.