Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Valenta2005-08-04 13:34:26 -0400
committerMichael Valenta2005-08-04 13:34:26 -0400
commit0294367743c78f519ff75b42dda5b19c1492ff9f (patch)
treefee215186dcb0566dfda030cb4a502d67d81e5e6
parent992ed184bdc4824312efebdaddb54cb0d4e0ce0f (diff)
downloadeclipse.platform.team-0294367743c78f519ff75b42dda5b19c1492ff9f.tar.gz
eclipse.platform.team-0294367743c78f519ff75b42dda5b19c1492ff9f.tar.xz
eclipse.platform.team-0294367743c78f519ff75b42dda5b19c1492ff9f.zip
Bug 101328 Got an error when trying to commit a removalM20050804a
-rw-r--r--bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSWorkspaceSubscriber.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSWorkspaceSubscriber.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSWorkspaceSubscriber.java
index 67ae4da9b..5b77d75f1 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSWorkspaceSubscriber.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSWorkspaceSubscriber.java
@@ -193,7 +193,7 @@ public class CVSWorkspaceSubscriber extends CVSSyncTreeSubscriber implements IRe
CVSProviderPlugin.log(e);
}
try {
- resource.accept(new IResourceVisitor() {
+ visit(resource, new IResourceVisitor() {
public boolean visit(IResource innerResource) throws CoreException {
try {
Policy.checkCanceled(monitor);
@@ -213,7 +213,7 @@ public class CVSWorkspaceSubscriber extends CVSSyncTreeSubscriber implements IRe
}
return true;
}
- }, depth, true /* include phantoms */);
+ }, depth);
} catch (CoreException e) {
set.addError(new TeamStatus(
IStatus.ERROR, CVSProviderPlugin.ID, ITeamStatus.SYNC_INFO_SET_ERROR,
@@ -223,6 +223,17 @@ public class CVSWorkspaceSubscriber extends CVSSyncTreeSubscriber implements IRe
monitor.done();
}
+ private void visit(IResource resource, IResourceVisitor visitor, int depth) throws CoreException {
+ boolean keepGoing = visitor.visit(resource);
+ if (keepGoing && depth != IResource.DEPTH_ZERO) {
+ IResource[] members = members(resource);
+ for (int i = 0; i < members.length; i++) {
+ IResource member = members[i];
+ visit(member, visitor, depth == IResource.DEPTH_ONE ? IResource.DEPTH_ZERO : IResource.DEPTH_INFINITE);
+ }
+ }
+ }
+
/* internal use only */ boolean isOutOfSync(IResource resource, IProgressMonitor monitor) throws TeamException {
return (hasIncomingChange(resource) || hasOutgoingChange(resource, monitor));
}

Back to the top