Bug 312397 - fixed few possible NPE's and warnings
The changes from commit 7e4d78772a616693a55ef16be754fe0780259e81 caused
11 new test failures in I20180728-0805. This commit fixes those NPE's
plus additionally other potential NPE's and some warnings in code.
Change-Id: I00645e044de583fa5fad0043936dc8dcef199c46
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/StandardVMRunner.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/StandardVMRunner.java
index e81a77b..6006c31 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/StandardVMRunner.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/StandardVMRunner.java
@@ -26,7 +26,7 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.SubProgressMonitor;
+import org.eclipse.core.runtime.SubMonitor;
import org.eclipse.debug.core.DebugPlugin;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
@@ -404,7 +404,7 @@
monitor = new NullProgressMonitor();
}
- IProgressMonitor subMonitor = new SubProgressMonitor(monitor, 1);
+ IProgressMonitor subMonitor = SubMonitor.convert(monitor, 1);
subMonitor.subTask(LaunchingMessages.StandardVMRunner_Constructing_command_line____2);
String program = constructProgramString(config);
@@ -467,26 +467,21 @@
return cmd;
}
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.jdt.launching.IVMRunner#run(org.eclipse.jdt.launching.VMRunnerConfiguration, org.eclipse.debug.core.ILaunch,
- * org.eclipse.core.runtime.IProgressMonitor)
- */
@Override
public void run(VMRunnerConfiguration config, ILaunch launch, IProgressMonitor monitor) throws CoreException {
-
+ if (monitor == null) {
+ monitor = new NullProgressMonitor();
+ }
CommandDetails cmdDetails = getCommandLine(config, launch, monitor);
String[] cmdLine = cmdDetails.getCommandLine();
-
// check for cancellation
if (monitor.isCanceled()) {
return;
}
- IProgressMonitor subMonitor = new SubProgressMonitor(monitor, 1);
+ IProgressMonitor subMonitor = SubMonitor.convert(monitor, 1);
subMonitor.beginTask(LaunchingMessages.StandardVMRunner_Launching_VM____1, 2);
subMonitor.subTask(LaunchingMessages.StandardVMRunner_Starting_virtual_machine____3);
Process p= null;
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaLaunchDelegate.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaLaunchDelegate.java
index cf518cf..e197c1f 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaLaunchDelegate.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaLaunchDelegate.java
@@ -41,7 +41,10 @@
monitor = new NullProgressMonitor();
}
try {
- VMRunnerConfiguration runConfig = getVMRunnerConfiguration(configuration, mode, launch, monitor);
+ VMRunnerConfiguration runConfig = getVMRunnerConfiguration(configuration, mode, monitor);
+ if (runConfig == null) {
+ return ""; //$NON-NLS-1$
+ }
IVMRunner runner = getVMRunner(configuration, mode);
String cmdLine = runner.showCommandLine(runConfig, launch, monitor);
@@ -55,8 +58,7 @@
}
}
- private VMRunnerConfiguration getVMRunnerConfiguration(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException {
-
+ private VMRunnerConfiguration getVMRunnerConfiguration(ILaunchConfiguration configuration, String mode, IProgressMonitor monitor) throws CoreException {
monitor.beginTask(NLS.bind("{0}...", new String[]{configuration.getName()}), 3); //$NON-NLS-1$
// check for cancellation
@@ -128,12 +130,6 @@
return runConfig;
}
- /*
- * (non-Javadoc)
- *
- * @see org.eclipse.debug.core.model.ILaunchConfigurationDelegate#launch(org.eclipse.debug.core.ILaunchConfiguration, java.lang.String,
- * org.eclipse.debug.core.ILaunch, org.eclipse.core.runtime.IProgressMonitor)
- */
@Override
public void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException {
if (monitor == null) {
@@ -141,7 +137,10 @@
}
try {
- VMRunnerConfiguration runConfig = getVMRunnerConfiguration(configuration, mode, launch, monitor);
+ VMRunnerConfiguration runConfig = getVMRunnerConfiguration(configuration, mode, monitor);
+ if (runConfig == null) {
+ return;
+ }
// stop in main
prepareStopInMain(configuration);