Set IsBusy immediately, so there is no chance to run the command more than once.
MODIFY
WalletWasabi.Gui/Controls/WalletExplorer/ClosedWalletViewModel.cs
WalletWasabi.Gui/Controls/WalletExplorer/ClosedWalletViewModel.cs
@@ -18,6 +18,8 @@ namespace WalletWasabi.Gui.Controls.WalletExplorer
{
OpenWalletCommand = ReactiveCommand.CreateFromTask(async () =>
{
+ IsBusy = true;
+
try
{
var global = Locator.Current.GetService<Global>();

Set IsBusy immediately, so there is no chance to run the command more than once.