Skip to content

Commit 31af1cd

Browse files
committed
More tweaks. Close #1205
1 parent 50adb87 commit 31af1cd

File tree

1 file changed

+17
-12
lines changed

1 file changed

+17
-12
lines changed

RetailCoder.VBE/UI/SourceControl/SourceControlViewViewModel.cs

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -479,6 +479,12 @@ private void SetChildPresenterSourceControlProviders(ISourceControlProvider prov
479479
{
480480
ViewModel_ErrorThrown(null,
481481
new ErrorEventArgs(RubberduckUI.SourceControl_NoBranchesTitle, RubberduckUI.SourceControl_NoBranchesMessage, NotificationType.Error));
482+
483+
_config.Repositories.Remove(_config.Repositories.FirstOrDefault(repo => repo.Id == _vbe.ActiveVBProject.HelpFile));
484+
_configService.Save(_config);
485+
486+
_provider = null;
487+
Status = RubberduckUI.Offline;
482488
return;
483489
}
484490

@@ -550,13 +556,14 @@ private void CloneRepo()
550556
{
551557
_provider = _providerFactory.CreateProvider(_vbe.ActiveVBProject);
552558
var repo = _provider.Clone(CloneRemotePath, LocalDirectory);
553-
Provider = _providerFactory.CreateProvider(_vbe.ActiveVBProject, repo, _wrapperFactory);
554559
AddOrUpdateLocalPathConfig(new Repository
555560
{
556561
Id = _vbe.ActiveVBProject.HelpFile,
557562
LocalLocation = repo.LocalLocation,
558563
RemoteLocation = repo.RemoteLocation
559564
});
565+
566+
Provider = _providerFactory.CreateProvider(_vbe.ActiveVBProject, repo, _wrapperFactory);
560567
}
561568
catch (SourceControlException ex)
562569
{
@@ -566,25 +573,23 @@ private void CloneRepo()
566573

567574
OnOpenRepoCompleted();
568575
CloseCloneRepoGrid();
569-
570-
SetChildPresenterSourceControlProviders(_provider);
576+
571577
Status = RubberduckUI.Online;
572578
}
573579

574580
private void CreateNewRemoteRepo()
575581
{
576-
try
582+
if (Provider == null)
577583
{
578-
if (Provider == null)
579-
{
580-
ViewModel_ErrorThrown(null,
581-
new ErrorEventArgs(RubberduckUI.SourceControl_CreateNewRemoteRepo_FailureTitle,
582-
RubberduckUI.SourceControl_CreateNewRemoteRepo_NoOpenRepo, NotificationType.Error));
583-
return;
584-
}
584+
ViewModel_ErrorThrown(null,
585+
new ErrorEventArgs(RubberduckUI.SourceControl_CreateNewRemoteRepo_FailureTitle,
586+
RubberduckUI.SourceControl_CreateNewRemoteRepo_NoOpenRepo, NotificationType.Error));
587+
return;
588+
}
585589

590+
try
591+
{
586592
Provider.AddOrigin(CreateNewRemoteRemotePath, RemoteBranchName);
587-
588593
Provider.Publish(RemoteBranchName);
589594
}
590595
catch (SourceControlException ex)

0 commit comments

Comments
 (0)