SourceTree keeps crashing checking out a BitBucket branch
Asked by donald_macleod:

I'm having problems with SourceTree crashing every time I click the "Checkout in SourceTree" button on a branch in BitBucket. SourceTree opens with a popup dialog to enter details for the Clone operation but once I set my destination folder (to a newly created empty directory) in the popup dialog and click the "Clone" button in the "Clone New" tab the app crashes.

Looking at Event Viewer immediately after the crash, the same unhandled exception appears in the logs (see below). I'm working on a 64-bit Windows 10 Pro OS, if anyone can help point me in the right direction on how to resolve this it would be much appreciated:-)

Application: SourceTree.exe  
Framework Version: v4.0.30319  
Description: The process was terminated due to an unhandled exception.  
Exception Info: System.ObjectDisposedException  
at System.Reactive.Subjects.Subject\`1\[\[ReactiveUI.ReactiveCommand\`2+ExecutionInfo\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\], ReactiveUI, Version=9.20.0.0, Culture=neutral, PublicKeyToken=null\]\].ThrowDisposed()  
at System.Reactive.SynchronizedObserver\`1\[\[ReactiveUI.ReactiveCommand\`2+ExecutionInfo\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\], ReactiveUI, Version=9.20.0.0, Culture=neutral, PublicKeyToken=null\]\].OnNextCore(ExecutionInfo\<System.Reactive.Unit,System.Reactive.Unit\>)  
at System.Reactive.ObserverBase\`1\[\[ReactiveUI.ReactiveCommand\`2+ExecutionInfo\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\], ReactiveUI, Version=9.20.0.0, Culture=neutral, PublicKeyToken=null\]\].OnNext(ExecutionInfo\<System.Reactive.Unit,System.Reactive.Unit\>)  
at ReactiveUI.ReactiveCommand\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].\<Execute\>b__18_3()  
at System.Reactive.Linq.ObservableImpl.Finally\`1+_\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].Run(System.IObservable\`1\<System.Reactive.Unit\>)  
at System.Reactive.Producer\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\].SubscribeRaw(System.IObserver\`1\<System.Reactive.Unit\>, Boolean)  
at System.Reactive.Linq.ObservableImpl.AsObservable\`1\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].Run(_\<System.Reactive.Unit\>)  
at System.Reactive.Producer\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\].SubscribeRaw(System.IObserver\`1\<System.Reactive.Unit\>, Boolean)  
at System.Reactive.Subjects.ConnectableObservable\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].Connect()  
at System.Reactive.Linq.ObservableImpl.RefCount\`1+Eager+_\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].Run()  
at System.Reactive.Producer\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\].SubscribeRaw(System.IObserver\`1\<System.Reactive.Unit\>, Boolean)  
at System.Reactive.Concurrency.ObserveOn\`1+Scheduler\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].Run(System.Reactive.ObserveOnObserverNew\`1\<System.Reactive.Unit\>)  
at System.Reactive.Producer\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\].SubscribeRaw(System.IObserver\`1\<System.Reactive.Unit\>, Boolean)  
at System.Reactive.TailRecursiveSink\`1\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].Drain()  
at System.Reactive.TailRecursiveSink\`1\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].Run(System.Collections.Generic.IEnumerable\`1\<System.IObservable\`1\<System.Reactive.Unit\>\>)  
at System.Reactive.Concurrency.Scheduler+\<\>c__75\`1\[\[System.ValueTuple\`2\[\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\].\<ScheduleAction\>b__75_0(System.Reactive.Concurrency.IScheduler, System.ValueTuple\`2\<System.Action\`1\<System.ValueTuple\`2\<System.__Canon,System.__Canon\>\>,System.ValueTuple\`2\<System.__Canon,System.__Canon\>\>)  
at System.Reactive.Concurrency.CurrentThreadScheduler.Schedule\[\[System.ValueTuple\`2\[\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\],\[System.ValueTuple\`2\[\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\](System.ValueTuple\`2\<System.__Canon,System.ValueTuple\`2\<System.__Canon,System.__Canon\>\>, System.TimeSpan, System.Func\`3\<System.Reactive.Concurrency.IScheduler,System.ValueTuple\`2\<System.__Canon,System.ValueTuple\`2\<System.__Canon,System.__Canon\>\>,System.IDisposable\>)  
at System.Reactive.Concurrency.LocalScheduler.Schedule\[\[System.ValueTuple\`2\[\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\],\[System.ValueTuple\`2\[\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\](System.ValueTuple\`2\<System.__Canon,System.ValueTuple\`2\<System.__Canon,System.__Canon\>\>, System.Func\`3\<System.Reactive.Concurrency.IScheduler,System.ValueTuple\`2\<System.__Canon,System.ValueTuple\`2\<System.__Canon,System.__Canon\>\>,System.IDisposable\>)  
at System.Reactive.Concurrency.Scheduler.ScheduleAction\[\[System.ValueTuple\`2\[\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\](System.Reactive.Concurrency.IScheduler, System.ValueTuple\`2\<System.__Canon,System.__Canon\>, System.Action\`1\<System.ValueTuple\`2\<System.__Canon,System.__Canon\>\>)  
at System.Reactive.Producer\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\]\].SubscribeRaw(System.IObserver\`1\<System.Reactive.Unit\>, Boolean)  
at ReactiveUI.ReactiveCommandBase\`2\[\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\],\[System.Reactive.Unit, System.Reactive, Version=4.1.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263\]\].ICommandExecute(System.Object)  
at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(System.Windows.Input.ICommandSource, Boolean)  
at System.Windows.Controls.Primitives.ButtonBase.OnClick()  
at System.Windows.Controls.Button.OnClick()  
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(System.Windows.Input.MouseButtonEventArgs)  
at System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate, System.Object)  
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs)  
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)  
at System.Windows.UIElement.ReRaiseEventAs(System.Windows.DependencyObject, System.Windows.RoutedEventArgs, System.Windows.RoutedEvent)  
at System.Windows.UIElement.OnMouseUpThunk(System.Object, System.Windows.Input.MouseButtonEventArgs)  
at System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate, System.Object)  
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs)  
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)  
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)  
at System.Windows.UIElement.RaiseTrustedEvent(System.Windows.RoutedEventArgs)  
at System.Windows.Input.InputManager.ProcessStagingArea()  
at System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs)  
at System.Windows.Input.InputProviderSite.ReportInput(System.Windows.Input.InputReport)  
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr, System.Windows.Input.InputMode, Int32, System.Windows.Input.RawMouseActions, Int32, Int32, Int32)  
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr, MS.Internal.Interop.WindowMessage, IntPtr, IntPtr, Boolean ByRef)  
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)  
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)  
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)  
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)  
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)  
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)  
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)  
at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)  
at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)  
at System.Windows.Application.RunDispatcher(System.Object)  
at System.Windows.Application.RunInternal(System.Windows.Window)  
at SourceTree.App.Main()

Regards,

Donnie


Answers:
author: phil.kenderdine@incontrol.com
body: I have been having this problem for sometime. It used to be a nice feature but now I always copy the git command and use git to fetch and check out the branch. Did you resolve this issue as I'd be interested.