Bug 476930 - NPE in AbstractJavaLaunchConfigurationDelegate

Change-Id: I9d2c1189bee0cd340e90fad484a0dca881c0f658
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java
index 894dbf2..aea799c 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java
@@ -992,7 +992,10 @@
 		IJavaProject jp = getJavaProject(configuration);
 		if (jp != null) {
 			IProject p = jp.getProject();
-			return p.getLocation().toFile();
+			// p.getLocation() will be null in the case where the location is relative to an undefined workspace path variable.
+			if (p.getLocation() != null) {
+				return p.getLocation().toFile();
+			}
 		}
 		return null;
 	}