diff --git a/build/org.eclipse.cdt.managedbuilder.core/META-INF/MANIFEST.MF b/build/org.eclipse.cdt.managedbuilder.core/META-INF/MANIFEST.MF index e9161200b95..953da0f2dd9 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/META-INF/MANIFEST.MF +++ b/build/org.eclipse.cdt.managedbuilder.core/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.cdt.managedbuilder.core; singleton:=true -Bundle-Version: 9.2.0.qualifier +Bundle-Version: 9.2.100.qualifier Bundle-Activator: org.eclipse.cdt.managedbuilder.core.ManagedBuilderCorePlugin Bundle-Vendor: %providerName Bundle-Localization: plugin diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/HeadlessBuilderExternalSettingsProvider.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/HeadlessBuilderExternalSettingsProvider.java index 46648561369..f0501865df9 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/HeadlessBuilderExternalSettingsProvider.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/HeadlessBuilderExternalSettingsProvider.java @@ -58,16 +58,15 @@ public class HeadlessBuilderExternalSettingsProvider extends CExternalSettingPro static void hookExternalSettingsProvider() { if (additionalSettings.isEmpty()) return; - // Remove the external settings providers from all the hooked projects + // hook the external settings providers to all projects for (IProject project : ResourcesPlugin.getWorkspace().getRoot().getProjects()) { ICProjectDescription desc = CCorePlugin.getDefault().getProjectDescription(project); if (desc == null) continue; for (ICConfigurationDescription cfg : desc.getConfigurations()) { - String[] extSettingIds = cfg.getExternalSettingsProviderIds(); - String[] newSettingIds = new String[extSettingIds.length + 1]; - System.arraycopy(extSettingIds, 0, newSettingIds, 0, extSettingIds.length); - newSettingIds[extSettingIds.length] = ID; + List settingIds = new ArrayList<>(Arrays.asList(cfg.getExternalSettingsProviderIds())); + settingIds.add(ID); + String[] newSettingIds = settingIds.toArray(String[]::new); cfg.setExternalSettingsProviderIds(newSettingIds); } try {