SourceTree hangs when launching external diff (FileMerge)

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Medium
    • None
    • Affects Version/s: 2.3.1
    • Component/s: None
    • None
    • Environment:

      Mac OS 10.11.6 (El Capitan)

    • Severity 2 - Major

      When doing an external diff with FileMerge (may happen with other apps as well), SourceTree will hang if FileMerge isn't already running. This is 100% reproducible:

      1. In Preferences, select FileMerge as the visual diff tool.
      2. Make sure FileMerge is not already running.
      3. Do an external diff, which will launch FileMerge.

      Result: SourceTree will hang (beachball) until you quit FileMerge – closing the file window will not suffice.

      Expected result: SourceTree should continue to respond and operate independently of FileMerge.

      Workaround: In Xcode, launch FileMerge manually (Xcode->Open Developer Tool->FileMerge) before doing an external diff. If it's already running, the hang won't occur.

      Suspected cause: SourceTree launches the external diff application synchronously and must therefore wait until it exits. It should be launched asynchronously.

            Assignee:
            Unassigned
            Reporter:
            David Gish
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: