mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-07 17:56:01 +02:00
Fix for [Bug 182205] ScannerInfoProvider specified by custom extension is not being called
This commit is contained in:
parent
aa17ffe74c
commit
e6dbc5b189
4 changed files with 10 additions and 3 deletions
|
@ -38,7 +38,7 @@ public interface IManagedOptionValueHandler{
|
||||||
* button (or the OK button). The valueHandler can
|
* button (or the OK button). The valueHandler can
|
||||||
* transfer the value of the option to its own
|
* transfer the value of the option to its own
|
||||||
* back-end. */
|
* back-end. */
|
||||||
public final int EVENT_LOAD = 5; /** Posted when the managed build extensions (defined in the manifext files)extension option isThe option has been set by pressing the Apply
|
public final int EVENT_LOAD = 5; /** Posted when the managed build extensions (defined in the manifest files)
|
||||||
* are loadded.
|
* are loadded.
|
||||||
* The handler is allowed to adjust the extension elements
|
* The handler is allowed to adjust the extension elements
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -643,6 +643,7 @@ public class CConfigurationSpecSettings implements ICSettingsStorage{
|
||||||
if(extRef == null){
|
if(extRef == null){
|
||||||
extRef = createRef(extensionPoint, extension);
|
extRef = createRef(extensionPoint, extension);
|
||||||
checkReconsile(extensionPoint, false);
|
checkReconsile(extensionPoint, false);
|
||||||
|
fIsModified = true;
|
||||||
}
|
}
|
||||||
return extRef;
|
return extRef;
|
||||||
}
|
}
|
||||||
|
|
|
@ -147,6 +147,10 @@ public class CConfigBasedDescriptor implements ICDescriptor {
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void setDirty(boolean dirty){
|
||||||
|
fIsDirty = dirty;
|
||||||
|
}
|
||||||
|
|
||||||
public void updateConfiguration(ICConfigurationDescription des) throws CoreException{
|
public void updateConfiguration(ICConfigurationDescription des) throws CoreException{
|
||||||
fCfgDes = des;
|
fCfgDes = des;
|
||||||
fProject = fCfgDes.getProjectDescription().getProject();
|
fProject = fCfgDes.getProjectDescription().getProject();
|
||||||
|
|
|
@ -382,9 +382,10 @@ public class CConfigBasedDescriptorManager implements ICDescriptorManager {
|
||||||
//the descriptor was requested while load process
|
//the descriptor was requested while load process
|
||||||
des = (CProjectDescription)CProjectDescriptionManager.getInstance().getProjectDescription(des.getProject(), true);
|
des = (CProjectDescription)CProjectDescriptionManager.getInstance().getProjectDescription(des.getProject(), true);
|
||||||
ICConfigurationDescription cfgDescription = des.getIndexConfiguration();
|
ICConfigurationDescription cfgDescription = des.getIndexConfiguration();
|
||||||
if(cfgDescription != null)
|
if(cfgDescription != null){
|
||||||
dr.updateConfiguration((CConfigurationDescription)cfgDescription);
|
dr.updateConfiguration((CConfigurationDescription)cfgDescription);
|
||||||
else
|
dr.setDirty(false);
|
||||||
|
} else
|
||||||
setLoaddedDescriptor(des, null);
|
setLoaddedDescriptor(des, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -454,6 +455,7 @@ public class CConfigBasedDescriptorManager implements ICDescriptorManager {
|
||||||
CProjectDescription writableDes = (CProjectDescription)CProjectDescriptionManager.getInstance().getProjectDescription(event.getProject(), true);
|
CProjectDescription writableDes = (CProjectDescription)CProjectDescriptionManager.getInstance().getProjectDescription(event.getProject(), true);
|
||||||
ICConfigurationDescription indexCfg = writableDes.getIndexConfiguration();
|
ICConfigurationDescription indexCfg = writableDes.getIndexConfiguration();
|
||||||
dr.updateConfiguration((CConfigurationDescription)indexCfg);
|
dr.updateConfiguration((CConfigurationDescription)indexCfg);
|
||||||
|
dr.setDirty(false);
|
||||||
}
|
}
|
||||||
if(desEvent != null){
|
if(desEvent != null){
|
||||||
notifyListeners(desEvent);
|
notifyListeners(desEvent);
|
||||||
|
|
Loading…
Add table
Reference in a new issue