diff --git a/core/src/main/java/hudson/slaves/SlaveComputer.java b/core/src/main/java/hudson/slaves/SlaveComputer.java index cbafd9c0f9e2f54d05fe910685d301db6190bda6..f0de611c7c7324ac97b11f86a85e1626d246b0d8 100644 --- a/core/src/main/java/hudson/slaves/SlaveComputer.java +++ b/core/src/main/java/hudson/slaves/SlaveComputer.java @@ -192,7 +192,6 @@ public class SlaveComputer extends Computer { log.rewind(); try { launcher.launch(SlaveComputer.this, taskListener); - return null; } catch (AbortException e) { taskListener.error(e.getMessage()); throw e; @@ -208,6 +207,10 @@ public class SlaveComputer extends Computer { if (channel==null) offlineCause = new OfflineCause.LaunchFailed(); } + + if (channel==null) + throw new IOException("Slave failed to connect, even though the launcher didn't report it. See the log output for details."); + return null; } }); }