@@ -67,7 +67,6 @@ class SettingsView : Subview
67
67
private const string DefaultRepositoryRemoteName = "origin" ;
68
68
69
69
[ NonSerialized ] private int newGitIgnoreRulesSelection = - 1 ;
70
- [ NonSerialized ] private ConfigRemote ? activeRemote ;
71
70
72
71
[ SerializeField ] private string gitName ;
73
72
[ SerializeField ] private string gitEmail ;
@@ -94,6 +93,8 @@ public override void OnEnable()
94
93
{
95
94
base . OnEnable ( ) ;
96
95
AttachHandlers ( Repository ) ;
96
+
97
+ remoteHasChanged = true ;
97
98
}
98
99
99
100
public override void OnDisable ( )
@@ -114,8 +115,9 @@ public override void OnRepositoryChanged(IRepository oldRepository)
114
115
115
116
DetachHandlers ( oldRepository ) ;
116
117
AttachHandlers ( Repository ) ;
117
- activeRemote = Repository . CurrentRemote ;
118
+
118
119
remoteHasChanged = true ;
120
+
119
121
Refresh ( ) ;
120
122
}
121
123
@@ -178,7 +180,7 @@ private void MaybeUpdateData()
178
180
179
181
if ( Repository == null )
180
182
{
181
- if ( cachedUser == null || String . IsNullOrEmpty ( cachedUser . Name ) )
183
+ if ( ( cachedUser == null || String . IsNullOrEmpty ( cachedUser . Name ) ) && GitClient != null )
182
184
{
183
185
var user = new User ( ) ;
184
186
GitClient . GetConfig ( "user.name" , GitConfigSource . User )
@@ -221,6 +223,7 @@ private void MaybeUpdateData()
221
223
if ( remoteHasChanged )
222
224
{
223
225
remoteHasChanged = false ;
226
+ var activeRemote = Repository . CurrentRemote ;
224
227
hasRemote = activeRemote . HasValue && ! String . IsNullOrEmpty ( activeRemote . Value . Url ) ;
225
228
if ( ! hasRemote )
226
229
{
@@ -245,7 +248,6 @@ private void ResetToDefaults()
245
248
246
249
private void Repository_OnActiveRemoteChanged ( string remote )
247
250
{
248
- activeRemote = Repository . CurrentRemote ;
249
251
remoteHasChanged = true ;
250
252
}
251
253
0 commit comments