diff --git a/src/PowerShellEditorServices/Services/TextDocument/Handlers/TextDocumentHandler.cs b/src/PowerShellEditorServices/Services/TextDocument/Handlers/TextDocumentHandler.cs index 79af825ed..a02e7b884 100644 --- a/src/PowerShellEditorServices/Services/TextDocument/Handlers/TextDocumentHandler.cs +++ b/src/PowerShellEditorServices/Services/TextDocument/Handlers/TextDocumentHandler.cs @@ -74,6 +74,14 @@ protected override TextDocumentSyncRegistrationOptions CreateRegistrationOptions public override Task Handle(DidOpenTextDocumentParams notification, CancellationToken token) { + // We're receiving notifications for special "git" scheme files from VS Code, and we + // need to ignore those! Otherwise they're added to our workspace service's opened files + // and cause duplicate references. + if (notification.TextDocument.Uri.Scheme == "git") + { + return Unit.Task; + } + // We use a fake Uri because we only want to test the LanguageId here and not if the // file ends in ps*1. TextDocumentAttributes attributes = new(s_fakeUri, notification.TextDocument.LanguageId);