diff options
Diffstat (limited to 'bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseResource.java')
-rw-r--r-- | bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseResource.java | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseResource.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseResource.java index fc5f2b537..0fd4c2db8 100644 --- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseResource.java +++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseResource.java @@ -118,25 +118,33 @@ abstract class EclipseResource implements ICVSResource { return false; } - // initialize matcher with global ignores and basic CVS ignore patterns - IIgnoreInfo[] ignorePatterns = TeamPlugin.getManager().getGlobalIgnore(); + // initialize matcher with global ignores, basic CVS ignore patterns, and ignore patterns + // from the .cvsignore file. FileNameMatcher matcher = new FileNameMatcher(SyncFileUtil.BASIC_IGNORE_PATTERNS); + String[] cvsIgnorePatterns;; + try { + cvsIgnorePatterns = EclipseSynchronizer.getInstance().getIgnored(resource); + } catch(CVSException e) { + cvsIgnorePatterns = null; + } + IIgnoreInfo[] ignorePatterns = TeamPlugin.getManager().getGlobalIgnore(); for (int i = 0; i < ignorePatterns.length; i++) { IIgnoreInfo info = ignorePatterns[i]; if(info.getEnabled()) { matcher.register(info.getPattern(), "true"); //$NON-NLS-1$ } } + if(cvsIgnorePatterns!=null) { + for (int i = 0; i < cvsIgnorePatterns.length; i++) { + matcher.register(cvsIgnorePatterns[i], "true"); + } + } - // 1. check CVS default patterns and global ignores + // check against all the registered patterns boolean ignored = matcher.match(getName()); - // 2. check .cvsignore file - if(!ignored) { - ignored = EclipseSynchronizer.getInstance().isIgnored(resource); - } - - // 3. check the parent + // check the parent, if the parent is ignored then this resource + // is ignored also if(!ignored) { ICVSFolder parent = getParent(); if(parent==null) return false; |