Skip to content

Commit 8fda68d

Browse files
committed
Fix NPE for manifest-yaml server
1 parent 4a52ea9 commit 8fda68d

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

headless-services/commons/commons-yaml/src/main/java/org/springframework/ide/vscode/commons/yaml/reconcile/TypeBasedYamlSymbolHandler.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.springframework.ide.vscode.commons.util.text.DocumentRegion;
2929
import org.springframework.ide.vscode.commons.util.text.TextDocument;
3030
import org.springframework.ide.vscode.commons.yaml.ast.NodeUtil;
31+
import org.springframework.ide.vscode.commons.yaml.reconcile.ASTTypeCache.NodeTypes;
3132
import org.springframework.ide.vscode.commons.yaml.schema.YType;
3233
import org.yaml.snakeyaml.nodes.Node;
3334

@@ -66,8 +67,9 @@ public List<? extends DocumentSymbol> handle(DocumentSymbolParams params) {
6667
Builder<DocumentSymbol> builder = ImmutableList.builder();
6768

6869
TextDocument doc = documents.getLatestSnapshot(params.getTextDocument().getUri());
69-
if (doc != null) {
70-
for (Entry<Node, YType> entry : astTypeCache.getNodeTypes(params.getTextDocument().getUri()).getTypes().entrySet()) {
70+
NodeTypes nodeTypes = astTypeCache.getNodeTypes(params.getTextDocument().getUri());
71+
if (doc != null && nodeTypes != null) {
72+
for (Entry<Node, YType> entry : nodeTypes.getTypes().entrySet()) {
7173
if (definitionTypes.contains(entry.getValue())) {
7274
try {
7375
builder.add(createSymbol(doc, entry.getKey(), entry.getValue()));

0 commit comments

Comments
 (0)