mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
2004-07-20 Alain Magloire
Fix for PR 70449 * src/org/eclipse/cdt/core/internal/filetype/ResolverModel.java
This commit is contained in:
parent
e39e5fd9c1
commit
e88b751962
2 changed files with 16 additions and 9 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2004-07-20 Alain Magloire
|
||||||
|
Fix for PR 70449
|
||||||
|
* src/org/eclipse/cdt/core/internal/filetype/ResolverModel.java
|
||||||
|
|
||||||
2004-07-16 Alain Magloire
|
2004-07-16 Alain Magloire
|
||||||
|
|
||||||
Fix for PR 70255
|
Fix for PR 70255
|
||||||
|
|
|
@ -748,7 +748,7 @@ public class ResolverModel implements IResolverModel {
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
private boolean customProjectResolverExists(IProject project) {
|
private boolean customProjectResolverExists(IProject project) {
|
||||||
Element data = getProjectData(project);
|
Element data = getProjectData(project, false);
|
||||||
Node child = ((null != data) ? data.getFirstChild() : null);
|
Node child = ((null != data) ? data.getFirstChild() : null);
|
||||||
Boolean custom = new Boolean(false);
|
Boolean custom = new Boolean(false);
|
||||||
|
|
||||||
|
@ -762,16 +762,19 @@ public class ResolverModel implements IResolverModel {
|
||||||
return custom.booleanValue();
|
return custom.booleanValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
private ICDescriptor getProjectDescriptor(IProject project) throws CoreException {
|
private ICDescriptor getProjectDescriptor(IProject project, boolean create) throws CoreException {
|
||||||
ICDescriptor descriptor = null;
|
ICDescriptor descriptor = null;
|
||||||
descriptor = CCorePlugin.getDefault().getCProjectDescription(project);
|
descriptor = CCorePlugin.getDefault().getCProjectDescription(project, false);
|
||||||
return descriptor;
|
return descriptor;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Element getProjectData(IProject project) {
|
private Element getProjectData(IProject project, boolean create) {
|
||||||
Element data = null;
|
Element data = null;
|
||||||
try {
|
try {
|
||||||
data = getProjectDescriptor(project).getProjectData(CDT_RESOLVER);
|
ICDescriptor desc = getProjectDescriptor(project, create);
|
||||||
|
if (desc != null) {
|
||||||
|
data = desc.getProjectData(CDT_RESOLVER);
|
||||||
|
}
|
||||||
} catch (CoreException e) {
|
} catch (CoreException e) {
|
||||||
}
|
}
|
||||||
return data;
|
return data;
|
||||||
|
@ -780,7 +783,7 @@ public class ResolverModel implements IResolverModel {
|
||||||
private ICFileTypeResolver loadProjectResolver(IProject project) {
|
private ICFileTypeResolver loadProjectResolver(IProject project) {
|
||||||
List assocs = new ArrayList();
|
List assocs = new ArrayList();
|
||||||
ICFileTypeResolver resolver = new CFileTypeResolver();
|
ICFileTypeResolver resolver = new CFileTypeResolver();
|
||||||
Element data = getProjectData(project);
|
Element data = getProjectData(project, false);
|
||||||
Node child = ((null != data) ? data.getFirstChild() : null);
|
Node child = ((null != data) ? data.getFirstChild() : null);
|
||||||
|
|
||||||
while (child != null) {
|
while (child != null) {
|
||||||
|
@ -809,7 +812,7 @@ public class ResolverModel implements IResolverModel {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void saveProjectResolver(IProject project, ICFileTypeResolver resolver) {
|
private void saveProjectResolver(IProject project, ICFileTypeResolver resolver) {
|
||||||
Element root = getProjectData(project);
|
Element root = getProjectData(project, true);
|
||||||
Document doc = root.getOwnerDocument();
|
Document doc = root.getOwnerDocument();
|
||||||
Node child = root.getFirstChild();
|
Node child = root.getFirstChild();
|
||||||
Element element = null;
|
Element element = null;
|
||||||
|
@ -840,7 +843,7 @@ public class ResolverModel implements IResolverModel {
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
getProjectDescriptor(project).saveProjectData();
|
getProjectDescriptor(project, true).saveProjectData();
|
||||||
} catch (CoreException e) {
|
} catch (CoreException e) {
|
||||||
CCorePlugin.log(e);
|
CCorePlugin.log(e);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue