Bug 546247 - Exceptions when dealing with messages during shutdown
Change-Id: I8538962f2df8d114a6b63666c23162962b506826
Signed-off-by: Mickael Istria <mistria@redhat.com>
diff --git a/org.eclipse.lsp4e/src/org/eclipse/lsp4e/LanguageServerWrapper.java b/org.eclipse.lsp4e/src/org/eclipse/lsp4e/LanguageServerWrapper.java
index bc4c4d9..68d1e21 100644
--- a/org.eclipse.lsp4e/src/org/eclipse/lsp4e/LanguageServerWrapper.java
+++ b/org.eclipse.lsp4e/src/org/eclipse/lsp4e/LanguageServerWrapper.java
@@ -214,7 +214,10 @@
consumer.consume(message);
logMessage(message);
URI root = initParams.getRootUri() != null ? URI.create(initParams.getRootUri()) : null;
- this.lspStreamProvider.handleMessage(message, this.languageServer, root);
+ final StreamConnectionProvider currentConnectionProvider = this.lspStreamProvider;
+ if (currentConnectionProvider != null && isActive()) {
+ currentConnectionProvider.handleMessage(message, this.languageServer, root);
+ }
}));
this.languageServer = launcher.getRemoteProxy();