diff options
-rw-r--r-- | bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSDecorationRunnable.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSDecorationRunnable.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSDecorationRunnable.java index 98a285b00..092e7b12c 100644 --- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSDecorationRunnable.java +++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSDecorationRunnable.java @@ -232,20 +232,28 @@ public class CVSDecorationRunnable implements Runnable { protected static CVSTag getTagToShow(IResource resource) throws CVSException { ICVSResource cvsResource = CVSWorkspaceRoot.getCVSResourceFor(resource); CVSTag tag = null; + + // for unmanaged resources don't show a tag since they will be added in + // the context of their parents tag. For managed resources only show tags + // if different than parent. + boolean managed = false; + if(cvsResource.isFolder()) { FolderSyncInfo folderInfo = ((ICVSFolder)cvsResource).getFolderSyncInfo(); if(folderInfo != null) { tag = folderInfo.getTag(); + managed = true; } } else { ResourceSyncInfo info = ((ICVSFile)cvsResource).getSyncInfo(); if(info != null) { tag = info.getTag(); + managed = true; } } ICVSFolder parent = cvsResource.getParent(); - if(parent != null && tag != null) { + if(parent != null && managed) { FolderSyncInfo parentInfo = parent.getFolderSyncInfo(); if(parentInfo != null) { CVSTag parentTag = parentInfo.getTag(); |