1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-14 12:35:22 +02:00

Fix for Bug 71115: Double Indexing

This commit is contained in:
Bogdan Gheorghe 2004-08-09 15:21:10 +00:00
parent d30e954584
commit f0ff087997
3 changed files with 28 additions and 15 deletions

View file

@ -1,3 +1,9 @@
2004-08-09 Bogdan Gheorghe
Fix for Bug 71115: Double Indexing
Added CContainer support to updateIndexAdd/RemoveResource
* model/org/eclipse/cdt/internal/core/model/DeltaProcessor.java
2004-07-28 Tanya Wolff 2004-07-28 Tanya Wolff
Fix for PR 70161: Assembly untranslated in C++ File Types Fix for PR 70161: Assembly untranslated in C++ File Types

View file

@ -539,8 +539,7 @@ public class IndexManager extends JobManager implements IIndexConstants {
/** /**
* Remove the content of the given source folder from the index. * Remove the content of the given source folder from the index.
*/ */
public void removeSourceFolderFromIndex(CProject cProject, IPath sourceFolder, char[][] exclusionPatterns) { public void removeSourceFolderFromIndex(IProject project, IPath sourceFolder, char[][] exclusionPatterns) {
IProject project = cProject.getProject();
if( !isIndexEnabled( project ) ) if( !isIndexEnabled( project ) )
return; return;

View file

@ -500,7 +500,7 @@ public class DeltaProcessor {
updateIndexAddResource(element, delta); updateIndexAddResource(element, delta);
elementAdded(element, delta); elementAdded(element, delta);
} }
return true; return false;
case IResourceDelta.REMOVED : case IResourceDelta.REMOVED :
if (element != null) { if (element != null) {
@ -534,7 +534,7 @@ public class DeltaProcessor {
} }
elementOpened(element, delta); elementOpened(element, delta);
updateIndexAddResource(element, delta); updateIndexAddResource(element, delta);
return true; return false;
} }
elementClosed(element, delta); elementClosed(element, delta);
updateIndexRemoveResource(element, delta); updateIndexRemoveResource(element, delta);
@ -578,6 +578,10 @@ public class DeltaProcessor {
this.indexManager.indexAll(element.getCProject().getProject()); this.indexManager.indexAll(element.getCProject().getProject());
break; break;
case ICElement.C_CCONTAINER:
indexManager.indexSourceFolder(element.getCProject().getProject(),element.getPath(),null);
break;
case ICElement.C_UNIT: case ICElement.C_UNIT:
IFile file = (IFile) delta.getResource(); IFile file = (IFile) delta.getResource();
IProject filesProject = file.getProject(); IProject filesProject = file.getProject();
@ -603,6 +607,10 @@ public class DeltaProcessor {
// NB: Update of index if project is opened, closed, or its c nature is added or removed // NB: Update of index if project is opened, closed, or its c nature is added or removed
// is done in updateCurrentDeltaAndIndex // is done in updateCurrentDeltaAndIndex
case ICElement.C_CCONTAINER:
indexManager.removeSourceFolderFromIndex(element.getCProject().getProject(),element.getPath(),null);
break;
case ICElement.C_UNIT: case ICElement.C_UNIT:
IFile file = (IFile) delta.getResource(); IFile file = (IFile) delta.getResource();
indexManager.remove(file.getFullPath().toString(), file.getProject().getFullPath()); indexManager.remove(file.getFullPath().toString(), file.getProject().getFullPath());