@@ -327,10 +327,7 @@ public ITask DiscardChanges(GitStatusEntry[] gitStatusEntries)
327
327
328
328
if ( itemsToRevert . Any ( ) )
329
329
{
330
- var next = GitClient . Discard ( itemsToRevert ) ;
331
- HookupHandlers ( next , true ) ;
332
- task . OnEnd -= HookupEndHandlerWithWatcher ;
333
- task . Then ( next ) ;
330
+ task . Then ( GitClient . Discard ( itemsToRevert ) ) ;
334
331
}
335
332
}
336
333
, ( ) => gitStatusEntries ) ;
@@ -453,35 +450,21 @@ private ITask HookupHandlers(ITask task, bool filesystemChangesExpected)
453
450
}
454
451
} ;
455
452
456
- if ( filesystemChangesExpected )
457
- task . OnEnd += HookupEndHandlerWithWatcher ;
458
- else
459
- task . OnEnd += HookupEndHandlerWithoutWatcher ;
460
- return task ;
461
- }
462
-
463
- private void HookupEndHandlerWithWatcher ( ITask task , bool success , Exception ex )
464
- {
465
- HookupEndHandler ( task , true ) ;
466
- }
467
-
468
- private void HookupEndHandlerWithoutWatcher ( ITask task , bool success , Exception ex )
469
- {
470
- HookupEndHandler ( task , false ) ;
471
- }
472
-
473
- private void HookupEndHandler ( ITask task , bool filesystemChangesExpected )
474
- {
475
- var isExclusive = task . IsChainExclusive ( ) ;
476
- if ( filesystemChangesExpected )
453
+ task . Finally ( success =>
477
454
{
478
- watcher . Start ( ) ;
479
- }
455
+ if ( filesystemChangesExpected )
456
+ {
457
+ //Logger.Trace("Ended Operation - Enable Watcher");
458
+ watcher . Start ( ) ;
459
+ }
480
460
481
- if ( isExclusive )
482
- {
483
- IsBusy = false ;
484
- }
461
+ if ( isExclusive )
462
+ {
463
+ //Logger.Trace("Ended Operation - Clearing Busy Flag");
464
+ IsBusy = false ;
465
+ }
466
+ } ) ;
467
+ return task ;
485
468
}
486
469
487
470
private string GetCurrentHead ( )
0 commit comments