From cd873229b696fea522559658748f2f5871bd6a30 Mon Sep 17 00:00:00 2001 From: Kris De Volder Date: Mon, 24 Jun 2019 11:11:01 -0700 Subject: [PATCH] textDocument/definition should not send 'null' result See: https://github.com/spring-projects/sts4/issues/309 --- .../languageserver/util/SimpleTextDocumentService.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/SimpleTextDocumentService.java b/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/SimpleTextDocumentService.java index 49b12e6f4..e2cc5c0d8 100644 --- a/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/SimpleTextDocumentService.java +++ b/headless-services/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/SimpleTextDocumentService.java @@ -352,7 +352,11 @@ public class SimpleTextDocumentService implements TextDocumentService, DocumentE if (h != null) { return async.invoke(() -> { List locations = h.handle(position); - return Either., List>forLeft(locations); + if (locations==null) { + // vscode client does not like to recieve null result. See: https://github.com/spring-projects/sts4/issues/309 + locations = ImmutableList.of(); + } + return Either.forLeft(locations); }); } return CompletableFuture.completedFuture(Either.forLeft(ImmutableList.of()));