Details
-
Bug
-
Resolution: Unresolved
-
Low
-
None
-
3.4.5
-
None
-
Severity 2 - Major
Description
Attempting to force push any branch will cause the push window to respawn indefinitely rather than trigger the push command.
push --force from CLI/terminal is not affected, so the terminal command can be used as a workaround for power users. Less technical users are unable to perform this action.
We observe the following error in logs:
ERROR [2021-07-05 12:19:00,896] [83] [SourceTree.ViewModel.RepoDialogContainer] [Log] - The calling thread must be STA, because many UI components require this. System.InvalidOperationException: The calling thread must be STA, because many UI components require this. at System.Windows.Input.InputManager..ctor() at System.Windows.Input.InputManager.GetCurrentInputManagerImpl() at System.Windows.Input.KeyboardNavigation..ctor() at System.Windows.FrameworkElement.FrameworkServices..ctor() at System.Windows.FrameworkElement.EnsureFrameworkServices() at System.Windows.FrameworkElement..ctor() at System.Windows.Controls.Control..ctor() at System.Windows.Window..ctor() at SourceTree.UI.Theme.Wpf.Controls.PerMonitorDpiWindow..ctor() at SourceTree.View.Dialogs.NotificationDialogWindow..ctor(String title, String message, Object contentControl, RelayCommand contentCommand, String contentCommandLabel, String customActionLabel, String customCancelLabel, Boolean isError, RelayCommand suppressionCommand, VistaTaskDialogIcon icon) at SourceTree.Notifications.NotificationsManager.ShowNotificationDialog[T](String title, String message, Tuple`2 customAction, String cancelLabel, String suppressionSetting, Action`1 suppressionChangedAction, Object contentControl, String contentCommandLabel, Action contentAction) at SourceTree.Notifications.NotificationsManager.ShowNotificationDialog[T](String title, String message, String details, Tuple`2 customAction, String cancelLabel, String suppressionSetting, Action`1 suppressionChangedAction) at SourceTree.Notifications.NotificationsManager.ShowNotificationDialog[T](String title, String message, String details, Tuple`2 customAction, String cancelLabel) at SourceTree.Notifications.NotificationsManager.ShowNotificationDialogWithYesConfirmation(String title, String message, String details) at SourceTree.Notifications.NotificationsManager.ShowNotificationDialogWithYesConfirmation(String title, String message) at SourceTree.ViewModel.Git.GitPushDialogViewModel.FinalisePush() at SourceTree.ViewModel.Git.GitPushDialogViewModel.SubmoduleDialogCompleted(AbstractDialogViewModel repoDlg, Int32 returnCode) at SourceTree.ViewModel.AbstractDialogViewModel.Finish(Int32 returnCode) at SourceTree.ViewModel.SubmoduleCheckDialogViewModel.<RefreshSubmodules>d__46.MoveNext() — End of stack trace from previous location where exception was thrown — at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter.GetResult()\{pre}