mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-23 00:45:28 +02:00
2005-01-19 Alain Magloire
PR 83151 * model/org/eclipse/cdt/internal/core/model/DeltaProcessor.java
This commit is contained in:
parent
a53757cca0
commit
8006bc409b
2 changed files with 16 additions and 1 deletions
|
@ -1,3 +1,7 @@
|
|||
2005-01-19 Alain Magloire
|
||||
PR 83151
|
||||
* model/org/eclipse/cdt/internal/core/model/DeltaProcessor.java
|
||||
|
||||
2005-01-18 David Inglis
|
||||
Fixed bug #82705
|
||||
|
||||
|
|
|
@ -7,7 +7,9 @@ package org.eclipse.cdt.internal.core.model;
|
|||
|
||||
import org.eclipse.cdt.core.model.CModelException;
|
||||
import org.eclipse.cdt.core.model.CoreModel;
|
||||
import org.eclipse.cdt.core.model.IArchive;
|
||||
import org.eclipse.cdt.core.model.IArchiveContainer;
|
||||
import org.eclipse.cdt.core.model.IBinary;
|
||||
import org.eclipse.cdt.core.model.IBinaryContainer;
|
||||
import org.eclipse.cdt.core.model.ICElement;
|
||||
import org.eclipse.cdt.core.model.ICElementDelta;
|
||||
|
@ -312,7 +314,16 @@ public class DeltaProcessor {
|
|||
* </ul>
|
||||
*/
|
||||
protected void elementChanged(ICElement element, IResourceDelta delta) {
|
||||
if (element instanceof Openable) {
|
||||
// For Binary/Archive We can not call close() to the work
|
||||
// closing will remove the element from the {Binary,Archive}Container
|
||||
// We nee to clear the cache explicitely
|
||||
if (element instanceof IBinary || element instanceof IArchive) {
|
||||
CModelManager factory = CModelManager.getDefault();
|
||||
CElementInfo pinfo = (CElementInfo)factory.peekAtInfo(element);
|
||||
if (pinfo != null) {
|
||||
factory.removeInfo(element);
|
||||
}
|
||||
} else if (element instanceof Openable) {
|
||||
close((Openable)element);
|
||||
}
|
||||
fCurrentDelta.changed(element, ICElementDelta.F_CONTENT);
|
||||
|
|
Loading…
Add table
Reference in a new issue