Fix bug 11592 - mixing executables from variant and non-variant builds in the same SDK is OK
--- a/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/ExecutablesTab.java Fri Jul 09 08:28:44 2010 -0500
+++ b/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/ExecutablesTab.java Fri Jul 09 16:42:26 2010 -0500
@@ -418,7 +418,14 @@
IPath launchExeTargetPath = new Path(new File(launchExeName).getCanonicalPath()).removeLastSegments(2);
for (Executable executable : ExecutablesManager.getExecutablesManager().getExecutables(true)) {
IPath exePath = executable.getPath();
- if (launchExeTargetPath.isPrefixOf(exePath))
+ // remove last two segments here also (ignore urel, udeb, lib on executables)
+ // this is so we can match down to the compiler but not beyond:
+ // y:\epoc32\release\armv5.<variant>\... (for a variant build in raptor) will match
+ // y:\epco32\release\armv5\... for a non-variant built executable
+ IPath exePathShort = exePath.removeLastSegments(2);
+ String sLaunchExeTargetPath = launchExeTargetPath.toOSString();
+ String sExePath = exePathShort.toOSString();
+ if (sExePath.startsWith(sLaunchExeTargetPath) || sLaunchExeTargetPath.startsWith(sExePath))
files.add(new ExeFileToDebug(exePath.toOSString(), true));
}
} catch (Exception e) {