fix: lsp spawn logic (#2723)

This commit is contained in:
Aiden Cline
2025-09-21 11:25:47 -05:00
committed by GitHub
parent 7123fbeb47
commit 92c126d875

View File

@@ -126,13 +126,22 @@ export namespace LSP {
result.push(match) result.push(match)
continue continue
} }
log.info("spawning lsp server", { serverID: server.id }) const handle = await server
const handle = await server.spawn(root).catch((err) => { .spawn(root)
s.broken.add(root + server.id) .then((h) => {
log.error(`Failed to spawn LSP server ${server.id}`, { error: err }) if (h === undefined) {
return undefined s.broken.add(root + server.id)
}) }
return h
})
.catch((err) => {
s.broken.add(root + server.id)
log.error(`Failed to spawn LSP server ${server.id}`, { error: err })
return undefined
})
if (!handle) continue if (!handle) continue
log.info("spawned lsp server", { serverID: server.id })
const client = await LSPClient.create({ const client = await LSPClient.create({
serverID: server.id, serverID: server.id,
server: handle, server: handle,