Bug 564070: Handle exception on launch/attach command

Previously a launch or attach would cause an exception, but
the thenCombineAsync that is next would be waiting for the
initialized to also be ready, however that was never going
to happen because of the exception on the launch/attach.

Therefore, if the launch/attach finishes exceptionally, mark
initialized as finishing exceptionally so that the sequence
does not hang.

Change-Id: I3c23fb4fd970475b94d8444b412de355491282dd
diff --git a/org.eclipse.lsp4e.debug/META-INF/MANIFEST.MF b/org.eclipse.lsp4e.debug/META-INF/MANIFEST.MF
index 4cea597..654c209 100644
--- a/org.eclipse.lsp4e.debug/META-INF/MANIFEST.MF
+++ b/org.eclipse.lsp4e.debug/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: Debug Adapter client for Eclipse IDE (Incubation)
 Bundle-SymbolicName: org.eclipse.lsp4e.debug;singleton:=true
-Bundle-Version: 0.12.0.qualifier
+Bundle-Version: 0.12.1.qualifier
 Bundle-Activator: org.eclipse.lsp4e.debug.DSPPlugin
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
diff --git a/org.eclipse.lsp4e.debug/src/org/eclipse/lsp4e/debug/debugmodel/DSPDebugTarget.java b/org.eclipse.lsp4e.debug/src/org/eclipse/lsp4e/debug/debugmodel/DSPDebugTarget.java
index 1bfbd9b..4c6a52e 100644
--- a/org.eclipse.lsp4e.debug/src/org/eclipse/lsp4e/debug/debugmodel/DSPDebugTarget.java
+++ b/org.eclipse.lsp4e.debug/src/org/eclipse/lsp4e/debug/debugmodel/DSPDebugTarget.java
@@ -242,6 +242,11 @@
 						monitor.subTask("Attaching to running program");
 						return getDebugProtocolServer().attach(dspParameters);
 					}
+				}).handle((q, t) -> {
+					if (t != null) {
+						initialized.completeExceptionally(t);
+					}
+					return q;
 				}).thenCombineAsync(initialized, (v1, v2) -> {
 					monitor.worked(10);
 					return (Void) null;