diff options
Diffstat (limited to 'bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/sync/views/SynchronizeView.java')
-rw-r--r-- | bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/sync/views/SynchronizeView.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/sync/views/SynchronizeView.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/sync/views/SynchronizeView.java index b769531fb..a4ac27c96 100644 --- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/sync/views/SynchronizeView.java +++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/sync/views/SynchronizeView.java @@ -539,9 +539,6 @@ public class SynchronizeView extends ViewPart implements ITeamResourceChangeList if(delta.getFlags() == TeamDelta.SUBSCRIBER_CREATED) { TeamSubscriber s = delta.getSubscriber(); addSubscriber(s); - } else if(delta.getFlags() == TeamDelta.SUBSCRIBER_DELETED) { - TeamSubscriber s = delta.getSubscriber(); - removeSubscriber(s); } } } @@ -558,7 +555,7 @@ public class SynchronizeView extends ViewPart implements ITeamResourceChangeList actions.addContext(context); } - synchronized private void removeSubscriber(TeamSubscriber s) { + synchronized public void removeSubscriber(TeamSubscriber s) { // notify that context is changing SubscriberInput si = (SubscriberInput)subscriberInputs.get(s.getId()); ActionContext context = new ActionContext(null); @@ -571,6 +568,9 @@ public class SynchronizeView extends ViewPart implements ITeamResourceChangeList // forget about this input subscriberInputs.remove(s.getId()); + // de-register the subscriber with the platform + s.cancel(); + if (si == input) { if (subscriberInputs.isEmpty()) { disconnectSubscriberInput(); |