diff --git a/plugins/com.google.cloud.tools.eclipse.appengine.localserver/src/com/google/cloud/tools/eclipse/appengine/localserver/server/LocalAppEngineServerBehaviour.java b/plugins/com.google.cloud.tools.eclipse.appengine.localserver/src/com/google/cloud/tools/eclipse/appengine/localserver/server/LocalAppEngineServerBehaviour.java index 0709ba1fd8..9390415cc9 100644 --- a/plugins/com.google.cloud.tools.eclipse.appengine.localserver/src/com/google/cloud/tools/eclipse/appengine/localserver/server/LocalAppEngineServerBehaviour.java +++ b/plugins/com.google.cloud.tools.eclipse.appengine.localserver/src/com/google/cloud/tools/eclipse/appengine/localserver/server/LocalAppEngineServerBehaviour.java @@ -392,8 +392,11 @@ public void onOutputLine(String line) { } else if (line.equals("Traceback (most recent call last):")) { //$NON-NLS-1$ // An error occurred setServerState(IServer.STATE_STOPPED); - - } else if (line.contains("Starting module") && line.contains("running at: http://")) { //$NON-NLS-1$ //$NON-NLS-2$ + } else if (line.contains("Error: A fatal exception has occurred. Program will exit")) { //$NON-NLS-1$ + // terminate the Python process + stop(false); + } else if (line.contains("Starting module") //$NON-NLS-1$ + && line.contains("running at: http://")) { //$NON-NLS-1$ if (serverPortCandidate == 0 || line.contains("Starting module \"default\"")) { //$NON-NLS-1$ serverPortCandidate = extractPortFromServerUrlOutput(line); }