mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-06 09:16:02 +02:00
Unecessary flushing of the cache. Quick fix, while
Chris come with a new solution.
This commit is contained in:
parent
c241ddb3ed
commit
2a4baf63a4
1 changed files with 2 additions and 11 deletions
|
@ -90,20 +90,11 @@ public class TypeCacheDeltaListener implements IElementChangedListener {
|
||||||
ICElement elem= delta.getElement();
|
ICElement elem= delta.getElement();
|
||||||
int pathEntryChanged= ICElementDelta.F_ADDED_PATHENTRY_SOURCE | ICElementDelta.F_REMOVED_PATHENTRY_SOURCE |
|
int pathEntryChanged= ICElementDelta.F_ADDED_PATHENTRY_SOURCE | ICElementDelta.F_REMOVED_PATHENTRY_SOURCE |
|
||||||
ICElementDelta.F_CHANGED_PATHENTRY_INCLUDE | ICElementDelta.F_CHANGED_PATHENTRY_MACRO;
|
ICElementDelta.F_CHANGED_PATHENTRY_INCLUDE | ICElementDelta.F_CHANGED_PATHENTRY_MACRO;
|
||||||
boolean isAddedOrRemoved= (delta.getKind() != ICElementDelta.CHANGED)
|
boolean isAddedOrRemoved= (((delta.getKind() != ICElementDelta.CHANGED)
|
||||||
|| ((delta.getFlags() & pathEntryChanged) != 0);
|
|| ((delta.getFlags() & pathEntryChanged) != 0)) && (delta.getFlags() & ICElementDelta.F_CHILDREN) == 0);
|
||||||
|
|
||||||
switch (elem.getElementType()) {
|
switch (elem.getElementType()) {
|
||||||
case ICElement.C_MODEL:
|
case ICElement.C_MODEL:
|
||||||
{
|
|
||||||
if (isAddedOrRemoved) {
|
|
||||||
// CModel has changed
|
|
||||||
// flush the entire cache
|
|
||||||
fFlushAll= true;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return processDeltaChildren(delta);
|
return processDeltaChildren(delta);
|
||||||
}
|
|
||||||
|
|
||||||
case ICElement.C_PROJECT:
|
case ICElement.C_PROJECT:
|
||||||
case ICElement.C_CCONTAINER:
|
case ICElement.C_CCONTAINER:
|
||||||
|
|
Loading…
Add table
Reference in a new issue