diff options
Diffstat (limited to 'bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/repo/RepositoryRoot.java')
-rw-r--r-- | bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/repo/RepositoryRoot.java | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/repo/RepositoryRoot.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/repo/RepositoryRoot.java index cc414aba9..b90cc0399 100644 --- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/repo/RepositoryRoot.java +++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/repo/RepositoryRoot.java @@ -25,6 +25,7 @@ import org.eclipse.team.internal.ccvs.ui.*; import org.eclipse.team.internal.ccvs.ui.Policy; import org.eclipse.team.internal.ccvs.ui.operations.RemoteLogOperation; import org.eclipse.team.internal.ccvs.ui.operations.RemoteLogOperation.LogEntryCache; +import org.eclipse.team.internal.ccvs.ui.tags.TagSource; public class RepositoryRoot extends PlatformObject { @@ -443,15 +444,22 @@ public class RepositoryRoot extends PlatformObject { return (CVSTag[])tagSet.toArray(new CVSTag[0]); } - /* - * Return the cache key (path) for the given folder path. - * This has been changed to cache the tags directly - * with the folder to better support non-root projects. - * However, resources in the local workspace use the folder - * the project is mapped to as the tag source (see TagSource) + /** + * Return the cache key (path) for the given folder path. For root projects + * it returns the folder the project is mapped to as the tag source. For + * non-root projects it returns only the first segment of the path because + * for the time being tag lists are kept for the remote ancestors of the + * resource that is a direct child of the remote root. + * + * @see TagSource + * @see #addTags(String, CVSTag[]) + * + * @param remotePath + * the remote folder path + * @return the cache key (path) for the given folder path */ private String getCachePathFor(String remotePath) { - return remotePath; + return new Path(null, remotePath).segment(0); } /** |