diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/RefsTab.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/RefsTab.java index f87b86763ab..f35e2ed30d9 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/RefsTab.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/RefsTab.java @@ -159,11 +159,15 @@ public class RefsTab extends AbstractCPropertyTab { List projNames = new ArrayList(oldMapping.keySet()); int index = projNames.indexOf(projectName); if (n == MOVEUP_BUTTON) { - projNames.set(index, projNames.get(index - 1)); - projNames.set(index - 1, projectName); + if (index > 0) { + projNames.set(index, projNames.get(index - 1)); + projNames.set(index - 1, projectName); + } } else { - projNames.set(index, projNames.get(index + 1)); - projNames.set(index + 1, projectName); + if (index < projNames.size() - 1) { + projNames.set(index, projNames.get(index + 1)); + projNames.set(index + 1, projectName); + } } Map newMapping = new LinkedHashMap(oldMapping.size()); for (String name : projNames)