Skip to content

Commit 5d0cbdc

Browse files
protect languageClient
1 parent 64e27ef commit 5d0cbdc

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

src/features/PowerShellNotebooks.ts

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,13 +247,26 @@ class PowerShellNotebookContentProvider implements vscode.NotebookContentProvide
247247
}
248248

249249
class PowerShellNotebookKernel implements vscode.NotebookKernel, vscode.NotebookKernelProvider {
250+
private static informationMessage = "PowerShell extension has not finished starting up yet. Please try again in a few moments.";
251+
250252
public id?: string;
251253
public label: string = "PowerShell";
252254
public description?: string = "The PowerShell Notebook Mode kernel that runs commands in the PowerShell Integrated Console.";
253255
public isPreferred?: boolean;
254256
public preloads?: vscode.Uri[];
255257

256-
private languageClient: LanguageClient;
258+
private _languageClient: LanguageClient;
259+
private get languageClient(): LanguageClient {
260+
if (!this._languageClient) {
261+
vscode.window.showInformationMessage(
262+
PowerShellNotebookKernel.informationMessage);
263+
}
264+
return this._languageClient;
265+
}
266+
267+
private set languageClient(value: LanguageClient) {
268+
this._languageClient = value;
269+
}
257270

258271
public async executeAllCells(document: vscode.NotebookDocument): Promise<void> {
259272
for (const cell of document.cells) {

0 commit comments

Comments
 (0)