From 15bd01ac9f76cd053a9edd4aeff0be056542a67c Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Fri, 13 Dec 2024 13:28:57 +0100 Subject: [PATCH] fix https://github.com/microsoft/vscode/issues/224944 (#236034) --- .../contrib/callHierarchy/common/callHierarchy.ts | 4 ++-- .../contrib/typeHierarchy/common/typeHierarchy.ts | 12 ++++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.ts b/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.ts index c0ea84d13a7..795a96fd018 100644 --- a/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.ts +++ b/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.ts @@ -175,7 +175,7 @@ CommandsRegistry.registerCommand('_executeProvideIncomingCalls', async (_accesso // find model const model = _models.get(item._sessionId); if (!model) { - return undefined; + return []; } return model.resolveIncomingCalls(item, CancellationToken.None); @@ -188,7 +188,7 @@ CommandsRegistry.registerCommand('_executeProvideOutgoingCalls', async (_accesso // find model const model = _models.get(item._sessionId); if (!model) { - return undefined; + return []; } return model.resolveOutgoingCalls(item, CancellationToken.None); diff --git a/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.ts b/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.ts index 71f4f44687e..3144b4c7a99 100644 --- a/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.ts +++ b/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.ts @@ -138,14 +138,18 @@ CommandsRegistry.registerCommand('_executePrepareTypeHierarchy', async (accessor return []; } - _models.set(model.id, model); _models.forEach((value, key, map) => { if (map.size > 10) { value.dispose(); _models.delete(key); } }); - return [model.root]; + + for (const root of model.roots) { + _models.set(root._sessionId, model); + } + + return model.roots; } finally { textModelReference?.dispose(); @@ -169,7 +173,7 @@ CommandsRegistry.registerCommand('_executeProvideSupertypes', async (_accessor, // find model const model = _models.get(item._sessionId); if (!model) { - return undefined; + return []; } return model.provideSupertypes(item, CancellationToken.None); @@ -182,7 +186,7 @@ CommandsRegistry.registerCommand('_executeProvideSubtypes', async (_accessor, .. // find model const model = _models.get(item._sessionId); if (!model) { - return undefined; + return []; } return model.provideSubtypes(item, CancellationToken.None);