diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDeclarationsAction.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDeclarationsAction.java index d8fe3101dac..add33e23c12 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDeclarationsAction.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDeclarationsAction.java @@ -8,6 +8,7 @@ * Contributors: * IBM Corporation - initial API and implementation * Markus Schorn (Wind River Systems) + * Ed Swartz (Nokia) *******************************************************************************/ package org.eclipse.cdt.internal.ui.search.actions; @@ -96,9 +97,9 @@ public class OpenDeclarationsAction extends SelectionParseAction { findDefinitions(index, ast, binding) : findDeclarations(index, ast, binding); } - - if (declNames.length > 0) { - IASTFileLocation fileloc = declNames[0].getFileLocation(); + + for (int i = 0; i < declNames.length; i++) { + IASTFileLocation fileloc = declNames[i].getFileLocation(); if (fileloc != null) { final IPath path = new Path(fileloc.getFileName()); final int offset = fileloc.getNodeOffset(); @@ -113,6 +114,7 @@ public class OpenDeclarationsAction extends SelectionParseAction { } } }); + break; } } } diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDefinitionAction.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDefinitionAction.java index ec1af87c40c..145828f393b 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDefinitionAction.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/actions/OpenDefinitionAction.java @@ -8,6 +8,7 @@ * Contributors: * IBM Corporation - initial API and implementation * Markus Schorn (Wind River Systems) + * Ed Swartz (Nokia) *******************************************************************************/ package org.eclipse.cdt.internal.ui.search.actions; @@ -88,8 +89,8 @@ public class OpenDefinitionAction extends SelectionParseAction { IBinding binding = searchName.resolveBinding(); if (binding != null) { final IName[] declNames = ast.getDefinitions(binding); - if (declNames.length > 0) { - IASTFileLocation fileloc = declNames[0].getFileLocation(); + for (int i = 0; i < declNames.length; i++) { + IASTFileLocation fileloc = declNames[i].getFileLocation(); // no source location - TODO spit out an error in the status bar if (fileloc != null) { final IPath path = new Path(fileloc.getFileName()); @@ -105,6 +106,7 @@ public class OpenDefinitionAction extends SelectionParseAction { } } }); + break; } } }