Skip to content

Commit 21228fd

Browse files
authored
Merge branch 'main' into fix/llcdbg-crash
2 parents ec86cec + 19e68d1 commit 21228fd

File tree

9 files changed

+33
-20
lines changed

9 files changed

+33
-20
lines changed

Build/cg/cg.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ extends:
3030
parameters:
3131
pool:
3232
name: AzurePipelines-EO
33-
image: AzurePipelinesWindows2022compliantGPT
33+
image: 1ESPT-Windows2022
3434
os: windows
3535
sdl:
3636
sourceAnalysisPool:
3737
name: AzurePipelines-EO
38-
image: AzurePipelinesWindows2022compliantGPT
38+
image: 1ESPT-Windows2022
3939
os: windows
4040
binskim:
4141
preReleaseVersion: '4.3.1'

Build/loc/TranslationsImportExport.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ extends:
3030
parameters:
3131
pool:
3232
name: AzurePipelines-EO
33-
image: AzurePipelinesWindows2022compliantGPT
33+
image: 1ESPT-Windows2022
3434
os: windows
3535
sdl:
3636
sourceAnalysisPool:
3737
name: AzurePipelines-EO
38-
image: AzurePipelinesWindows2022compliantGPT
38+
image: 1ESPT-Windows2022
3939
os: windows
4040
stages:
4141
- stage: stage

Build/package/cpptools_extension_pack.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ extends:
2424
parameters:
2525
pool:
2626
name: AzurePipelines-EO
27-
image: AzurePipelinesWindows2022compliantGPT
27+
image: 1ESPT-Windows2022
2828
os: windows
2929
sdl:
3030
sourceAnalysisPool:
3131
name: AzurePipelines-EO
32-
image: AzurePipelinesWindows2022compliantGPT
32+
image: 1ESPT-Windows2022
3333
os: windows
3434

3535
stages:

Build/package/cpptools_themes.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ extends:
2424
parameters:
2525
pool:
2626
name: AzurePipelines-EO
27-
image: AzurePipelinesWindows2022compliantGPT
27+
image: 1ESPT-Windows2022
2828
os: windows
2929
sdl:
3030
sourceAnalysisPool:
3131
name: AzurePipelines-EO
32-
image: AzurePipelinesWindows2022compliantGPT
32+
image: 1ESPT-Windows2022
3333
os: windows
3434

3535
stages:

Build/publish/cpptools_extension_pack.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ extends:
1818
parameters:
1919
pool:
2020
name: AzurePipelines-EO
21-
image: AzurePipelinesWindows2022compliantGPT
21+
image: 1ESPT-Windows2022
2222
os: windows
2323
sdl:
2424
sourceAnalysisPool:
2525
name: AzurePipelines-EO
26-
image: AzurePipelinesWindows2022compliantGPT
26+
image: 1ESPT-Windows2022
2727
os: windows
2828

2929
stages:

Build/publish/cpptools_themes.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ extends:
1818
parameters:
1919
pool:
2020
name: AzurePipelines-EO
21-
image: AzurePipelinesWindows2022compliantGPT
21+
image: 1ESPT-Windows2022
2222
os: windows
2323
sdl:
2424
sourceAnalysisPool:
2525
name: AzurePipelines-EO
26-
image: AzurePipelinesWindows2022compliantGPT
26+
image: 1ESPT-Windows2022
2727
os: windows
2828

2929
stages:

Extension/package.nls.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -895,7 +895,7 @@
895895
"{Locked=\"`true`\"} {Locked=\"`processId`\"}"
896896
]
897897
},
898-
"c_cpp.debuggers.debugServerPath.description": "Optional full path to the debug server to launch. Defaults to null. It is used in conjunction with either \"miDebugServerAddress\" or your own server with a \"customSetupCommand\" that runs \"-target-select remote <server:port>\".",
898+
"c_cpp.debuggers.debugServerPath.description": "Optional full path to the debug server to launch. Defaults to null. It is used in conjunction with either \"miDebuggerServerAddress\" or your own server with a \"customSetupCommand\" that runs \"-target-select remote <server:port>\".",
899899
"c_cpp.debuggers.debugServerArgs.description": "Optional debug server args. Defaults to null.",
900900
"c_cpp.debuggers.serverStarted.description": "Optional server-started pattern to look for in the debug server output. Defaults to null.",
901901
"c_cpp.debuggers.filterStdout.description": "Search stdout stream for server-started pattern and log stdout to debug output. Defaults to true.",
@@ -1084,4 +1084,4 @@
10841084
"c_cpp.configuration.refactoring.includeHeader.never.description": "Never include the header file.",
10851085
"c_cpp.languageModelTools.configuration.displayName": "C/C++ configuration",
10861086
"c_cpp.languageModelTools.configuration.userDescription": "Configuration of the active C or C++ file, like language standard version and target platform."
1087-
}
1087+
}

Extension/src/LanguageServer/client.ts

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import * as fs from 'fs';
2828
import * as os from 'os';
2929
import { SourceFileConfiguration, SourceFileConfigurationItem, Version, WorkspaceBrowseConfiguration } from 'vscode-cpptools';
3030
import { IntelliSenseStatus, Status } from 'vscode-cpptools/out/testApi';
31-
import { CloseAction, DidOpenTextDocumentParams, ErrorAction, LanguageClientOptions, NotificationType, Position, Range, RequestType, ResponseError, TextDocumentIdentifier, TextDocumentPositionParams } from 'vscode-languageclient';
31+
import { CloseAction, ErrorAction, LanguageClientOptions, NotificationType, Position, Range, RequestType, ResponseError, TextDocumentIdentifier, TextDocumentPositionParams } from 'vscode-languageclient';
3232
import { LanguageClient, ServerOptions } from 'vscode-languageclient/node';
3333
import * as nls from 'vscode-nls';
3434
import { DebugConfigurationProvider } from '../Debugger/configurationProvider';
@@ -590,6 +590,18 @@ export interface CopilotCompletionContextParams {
590590
doAggregateSnippets: boolean;
591591
}
592592

593+
export interface TextDocumentItemWithOriginalEncoding {
594+
uri: string;
595+
languageId: string;
596+
version: number;
597+
text: string;
598+
originalEncoding: string;
599+
}
600+
601+
export interface DidOpenTextDocumentParamsWithOriginalEncoding {
602+
textDocument: TextDocumentItemWithOriginalEncoding;
603+
}
604+
593605
// Requests
594606
const PreInitializationRequest: RequestType<void, string, void> = new RequestType<void, string, void>('cpptools/preinitialize');
595607
const InitializationRequest: RequestType<CppInitializationParams, CppInitializationResult, void> = new RequestType<CppInitializationParams, CppInitializationResult, void>('cpptools/initialize');
@@ -614,7 +626,7 @@ const CppContextRequest: RequestType<TextDocumentIdentifier, ChatContextResult,
614626
const CopilotCompletionContextRequest: RequestType<CopilotCompletionContextParams, CopilotCompletionContextResult, void> = new RequestType<CopilotCompletionContextParams, CopilotCompletionContextResult, void>('cpptools/getCompletionContext');
615627

616628
// Notifications to the server
617-
const DidOpenNotification: NotificationType<DidOpenTextDocumentParams> = new NotificationType<DidOpenTextDocumentParams>('textDocument/didOpen');
629+
const DidOpenNotification: NotificationType<DidOpenTextDocumentParamsWithOriginalEncoding> = new NotificationType<DidOpenTextDocumentParamsWithOriginalEncoding>('cpptools/didOpen');
618630
const FileCreatedNotification: NotificationType<FileChangedParams> = new NotificationType<FileChangedParams>('cpptools/fileCreated');
619631
const FileChangedNotification: NotificationType<FileChangedParams> = new NotificationType<FileChangedParams>('cpptools/fileChanged');
620632
const FileDeletedNotification: NotificationType<FileChangedParams> = new NotificationType<FileChangedParams>('cpptools/fileDeleted');
@@ -2327,12 +2339,13 @@ export class DefaultClient implements Client {
23272339

23282340
// Only used in crash recovery. Otherwise, VS Code sends didOpen directly to native process (through the protocolFilter).
23292341
public async sendDidOpen(document: vscode.TextDocument): Promise<void> {
2330-
const params: DidOpenTextDocumentParams = {
2342+
const params: DidOpenTextDocumentParamsWithOriginalEncoding = {
23312343
textDocument: {
23322344
uri: document.uri.toString(),
23332345
languageId: document.languageId,
23342346
version: document.version,
2335-
text: document.getText()
2347+
text: document.getText(),
2348+
originalEncoding: document.encoding
23362349
}
23372350
};
23382351
await this.ready;

Extension/src/LanguageServer/protocolFilter.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export const ServerCancelled: number = -32802;
1919

2020
export function createProtocolFilter(): Middleware {
2121
return {
22-
didOpen: async (document, sendMessage) => {
22+
didOpen: async (document, _sendMessage) => {
2323
if (!util.isCpp(document)) {
2424
return;
2525
}
@@ -44,8 +44,8 @@ export function createProtocolFilter(): Middleware {
4444
}
4545
// client.takeOwnership() will call client.TrackedDocuments.add() again, but that's ok. It's a Set.
4646
client.takeOwnership(document);
47-
void sendMessage(document);
4847
client.ready.then(() => {
48+
client.sendDidOpen(document).catch(logAndReturn.undefined);
4949
const cppEditors: vscode.TextEditor[] = vscode.window.visibleTextEditors.filter(e => util.isCpp(e.document));
5050
client.onDidChangeVisibleTextEditors(cppEditors).catch(logAndReturn.undefined);
5151
}).catch(logAndReturn.undefined);

0 commit comments

Comments
 (0)