diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/BackgroundTaskGroup.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/BackgroundTaskGroup.java index edaf03450e25..10c13ca73a11 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/BackgroundTaskGroup.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/actions/BackgroundTaskGroup.java @@ -68,11 +68,6 @@ public class BackgroundTaskGroup extends BackgroundTaskQueue { } } - @Override - public void onSuccess() { - continuation.run(); - } - @Override public void onCancel() { end(); @@ -83,6 +78,11 @@ public class BackgroundTaskGroup extends BackgroundTaskQueue { LOG.error(e); end(); } + + @Override + public void onFinished() { + continuation.run(); + } }.queue()); } @@ -98,12 +98,10 @@ public class BackgroundTaskGroup extends BackgroundTaskQueue { isSuccess = e.isWarning(); } finally { - if (isSuccess) { - continuation.run(); - } - else { + if (!isSuccess) { end(); } + continuation.run(); } }); }