Better fix for Bug 10689.
--- a/cdt/cdt_6_0_x/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/executables/ExecutablesManager.java Wed Feb 24 15:38:39 2010 -0600
+++ b/cdt/cdt_6_0_x/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/executables/ExecutablesManager.java Thu Feb 25 23:36:03 2010 -0600
@@ -105,7 +105,7 @@
// store the list of executables for this project
synchronized (executablesMap) {
List<Executable> executables = provider.getExecutables(project, subMonitor.newChild(1, SubMonitor.SUPPRESS_NONE));
- if (executables != null) {
+ if (!subMonitor.isCanceled()) {
executablesMap.put(project, executables);
}
}
--- a/cdt/cdt_6_0_x/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/executables/IProjectExecutablesProvider.java Wed Feb 24 15:38:39 2010 -0600
+++ b/cdt/cdt_6_0_x/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/executables/IProjectExecutablesProvider.java Thu Feb 25 23:36:03 2010 -0600
@@ -38,7 +38,7 @@
* Get the list of executables for the given project
* @param project the project to get the executables for
* @param monitor progress monitor
- * @return the list of executables (which may be empty), or null if request is cancelled
+ * @return the list of executables (which may be empty)
*/
List<Executable> getExecutables(IProject project, IProgressMonitor monitor);
--- a/cdt/cdt_6_0_x/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/executables/StandardExecutableProvider.java Wed Feb 24 15:38:39 2010 -0600
+++ b/cdt/cdt_6_0_x/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/executables/StandardExecutableProvider.java Thu Feb 25 23:36:03 2010 -0600
@@ -55,7 +55,7 @@
for (IBinary binary : binaries) {
if (progress.isCanceled()) {
- return null;
+ break;
}
if (binary.isExecutable() || binary.isSharedLib()) {