mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-22 07:43:56 +02:00
Fix for 45737 & 45835
This commit is contained in:
parent
f9e17af94f
commit
7684f7c2c8
3 changed files with 26 additions and 9 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2003-11-06 David Inglis
|
||||||
|
|
||||||
|
Fix for 45737 & 45835
|
||||||
|
|
||||||
|
* model/org/eclipse/cdt/internal/core/DeltaProcessor.java
|
||||||
|
* model/org/eclipse/cdt/internal/core/CModelManager.java
|
||||||
|
|
||||||
2003-10-29 David Inglis
|
2003-10-29 David Inglis
|
||||||
|
|
||||||
Fix for 45734 & 45736, Though this only addresses a small part on the later.
|
Fix for 45734 & 45736, Though this only addresses a small part on the later.
|
||||||
|
|
|
@ -373,6 +373,10 @@ public class CModelManager implements IResourceChangeListener {
|
||||||
// so we have to recall create again.
|
// so we have to recall create again.
|
||||||
releaseCElement(celement);
|
releaseCElement(celement);
|
||||||
celement = create(project);
|
celement = create(project);
|
||||||
|
Parent parent = (Parent)celement.getParent();
|
||||||
|
CElementInfo info = (CElementInfo)parent.getElementInfo();
|
||||||
|
info.addChild(celement);
|
||||||
|
|
||||||
// Fired and ICElementDelta.PARSER_CHANGED
|
// Fired and ICElementDelta.PARSER_CHANGED
|
||||||
CElementDelta delta = new CElementDelta(getCModel());
|
CElementDelta delta = new CElementDelta(getCModel());
|
||||||
delta.binaryParserChanged(celement);
|
delta.binaryParserChanged(celement);
|
||||||
|
|
|
@ -61,12 +61,15 @@ public class DeltaProcessor {
|
||||||
ICElement parent = manager.create(resource.getParent());
|
ICElement parent = manager.create(resource.getParent());
|
||||||
// Probably it was deleted, find it
|
// Probably it was deleted, find it
|
||||||
if (parent instanceof IParent) {
|
if (parent instanceof IParent) {
|
||||||
ICElement[] children = ((CElement)parent).getElementInfo().getChildren();
|
ICElement[] children;
|
||||||
for (int i = 0; i < children.length; i++) {
|
if ( CModelManager.getDefault().peekAtInfo(parent) != null ) {
|
||||||
IResource res = children[i].getResource();
|
children = ((CElement)parent).getElementInfo().getChildren();
|
||||||
if (res != null && res.equals(resource)) {
|
for (int i = 0; i < children.length; i++) {
|
||||||
celement = children[i];
|
IResource res = children[i].getResource();
|
||||||
break;
|
if (res != null && res.equals(resource)) {
|
||||||
|
celement = children[i];
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// BUG 36424:
|
// BUG 36424:
|
||||||
|
@ -380,9 +383,12 @@ public class DeltaProcessor {
|
||||||
elementDelta.addResourceDelta(delta);
|
elementDelta.addResourceDelta(delta);
|
||||||
}
|
}
|
||||||
if (parent instanceof CContainer) {
|
if (parent instanceof CContainer) {
|
||||||
CElementInfo info = ((CContainer)parent).getElementInfo();
|
// if info not created yet no need to null NonCResources...
|
||||||
if (info instanceof CContainerInfo) {
|
if (CModelManager.getDefault().peekAtInfo(parent) != null) {
|
||||||
((CContainerInfo)info).setNonCResources(null);
|
CElementInfo info = ((CContainer)parent).getElementInfo();
|
||||||
|
if (info instanceof CContainerInfo) {
|
||||||
|
((CContainerInfo)info).setNonCResources(null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue