Investigate test flakiness:
DevMode#doStartUpServer() fails from time to time (rarely) due
to an unknown error. Adding some logging to pinpoint the problem

Review at http://gwt-code-reviews.appspot.com/1401803

Review by: fabbott@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9943 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/src/com/google/gwt/dev/shell/jetty/JettyLauncher.java b/dev/core/src/com/google/gwt/dev/shell/jetty/JettyLauncher.java
index 42ee9e5..d0f4a87 100644
--- a/dev/core/src/com/google/gwt/dev/shell/jetty/JettyLauncher.java
+++ b/dev/core/src/com/google/gwt/dev/shell/jetty/JettyLauncher.java
@@ -670,8 +670,20 @@
     // Now that we're started, log to the top level logger.
     Log.setLog(new JettyTreeLogger(logger));
 
+    // DevMode#doStartUpServer() fails from time to time (rarely) due
+    // to an unknown error. Adding some logging to pinpoint the problem.
+    int connectorPort = connector.getLocalPort();
+    if (connector.getLocalPort() < 0) {
+      branch.log(TreeLogger.ERROR, String.format(
+          "Failed to connect to open channel with port %d (return value %d)",
+          port, connectorPort));
+      if (connector.getConnection() == null ) {
+        branch.log(TreeLogger.TRACE, "Connection is null");
+      }
+    }
+
     return createServletContainer(logger, appRootDir, server, wac,
-        connector.getLocalPort());
+        connectorPort);
   }
 
   protected JettyServletContainer createServletContainer(TreeLogger logger,