Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSettinsDeltaCalculator.java')
-rw-r--r--core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSettinsDeltaCalculator.java15
1 files changed, 5 insertions, 10 deletions
diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSettinsDeltaCalculator.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSettinsDeltaCalculator.java
index ef4681a7ec7..9f297793f45 100644
--- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSettinsDeltaCalculator.java
+++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CExternalSettinsDeltaCalculator.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007, 2011 Intel Corporation and others.
+ * Copyright (c) 2007, 2018 Intel Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -19,7 +19,6 @@ import java.util.Arrays;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
-import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
@@ -235,7 +234,7 @@ class CExternalSettinsDeltaCalculator {
if (oldSettings == null || oldSettings.length == 0)
return createDeltas(newSettings, true);
- LinkedList<ExtSettingsDelta> deltaList = new LinkedList<>();
+ List<ExtSettingsDelta> deltaList = new ArrayList<>();
Map<ExtSettingMapKey, ICExternalSetting> newMap = toSettingsKeyMap(newSettings);
Map<ExtSettingMapKey, ICExternalSetting> oldMap = toSettingsKeyMap(oldSettings);
@@ -243,20 +242,16 @@ class CExternalSettinsDeltaCalculator {
CExternalSetting newSetting = (CExternalSetting) entry.getValue();
CExternalSetting oldSetting = (CExternalSetting) oldMap.remove(entry.getKey());
if (oldSetting == null) {
- deltaList.addLast(new ExtSettingsDelta(newSetting, true));
+ deltaList.add(new ExtSettingsDelta(newSetting, true));
} else {
ExtSettingsDelta delta = createDelta(newSetting, oldSetting);
if (delta != null)
- deltaList.addLast(delta);
+ deltaList.add(delta);
}
}
for (ICExternalSetting oldSettng : oldMap.values()) {
- // removals must be prepended to the list so that they are applied before additions,
- // otherwise a setting that was just added might be immediately removed again in
- // CExternalSettingsDeltaProcessor.applyDelta(ICLanguageSetting, ExtSettingsDelta[], int)
- // if the old and new setting only differ in their language sets and these overlap
- deltaList.addFirst(new ExtSettingsDelta((CExternalSetting) oldSettng, false));
+ deltaList.add(new ExtSettingsDelta((CExternalSetting) oldSettng, false));
}
if (deltaList.size() == 0)

Back to the top