From 887f223da866ac0c1e7bdd88bde0de895d1ad3fe Mon Sep 17 00:00:00 2001 From: Ahmed Samir Date: Sat, 28 Feb 2026 23:57:11 +0200 Subject: [PATCH] language-server: suppress expected git check-ignore exit code --- language-server/src/core/workspace-indexer.ts | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/language-server/src/core/workspace-indexer.ts b/language-server/src/core/workspace-indexer.ts index f94ce2f..678e823 100644 --- a/language-server/src/core/workspace-indexer.ts +++ b/language-server/src/core/workspace-indexer.ts @@ -1161,13 +1161,34 @@ export class WorkspaceIndexer { this.resolveGitCheck(filePath, isIgnored); } } catch (error) { - console.error(`Git check-ignore batch failed for ${folder}:`, error); + const exitCode = WorkspaceIndexer.getGitExitCode(error); + if (exitCode !== 1) { + console.error(`Git check-ignore batch failed for ${folder}:`, error); + } for (const filePath of filesArray) { this.resolveGitCheck(filePath, false); } } } + private static getGitExitCode(error: unknown): number | undefined { + if (typeof error === 'object' && error !== null && 'code' in error) { + const code = (error as { code?: unknown }).code; + if (typeof code === 'number') { + return code; + } + } + + if (error instanceof Error) { + const match = error.message.match(/code\s+(\d+)/); + if (match) { + return Number.parseInt(match[1], 10); + } + } + + return undefined; + } + private resolveGitCheck(filePath: string, isIgnored: boolean) { const resolvers = this.gitCheckResolvers.get(filePath); if (resolvers) {