Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.team.core/src/org/eclipse/team/core/variants/ResourceVariantTree.java')
-rw-r--r--bundles/org.eclipse.team.core/src/org/eclipse/team/core/variants/ResourceVariantTree.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/variants/ResourceVariantTree.java b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/variants/ResourceVariantTree.java
index 619de1ab1..8a496e514 100644
--- a/bundles/org.eclipse.team.core/src/org/eclipse/team/core/variants/ResourceVariantTree.java
+++ b/bundles/org.eclipse.team.core/src/org/eclipse/team/core/variants/ResourceVariantTree.java
@@ -11,6 +11,9 @@
package org.eclipse.team.core.variants;
import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspaceRunnable;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.team.core.TeamException;
/**
@@ -93,4 +96,19 @@ public abstract class ResourceVariantTree extends AbstractResourceVariantTree {
if (remote == null) return null;
return remote.asBytes();
}
+
+ /* (non-Javadoc)
+ * @see org.eclipse.team.core.variants.AbstractResourceVariantTree#collectChanges(org.eclipse.core.resources.IResource, org.eclipse.team.core.variants.IResourceVariant, int, org.eclipse.core.runtime.IProgressMonitor)
+ */
+ protected IResource[] collectChanges(final IResource local,
+ final IResourceVariant remote, final int depth, IProgressMonitor monitor)
+ throws TeamException {
+ final IResource[][] resources = new IResource[][] { null };
+ getByteStore().run(local, new IWorkspaceRunnable() {
+ public void run(IProgressMonitor monitor) throws CoreException {
+ resources[0] = ResourceVariantTree.super.collectChanges(local, remote, depth, monitor);
+ }
+ }, monitor);
+ return resources[0];
+ }
}

Back to the top