diff --git a/src/vs/workbench/api/common/extHostNotebook.ts b/src/vs/workbench/api/common/extHostNotebook.ts index 71739380fcf..5e2ce8a9c3a 100644 --- a/src/vs/workbench/api/common/extHostNotebook.ts +++ b/src/vs/workbench/api/common/extHostNotebook.ts @@ -184,11 +184,17 @@ export class ExtHostNotebookDocument extends Disposable implements vscode.Notebo ...notebookDocumentMetadataDefaults, ...newMetadata }; + if (this._metadataChangeListener) { + this._metadataChangeListener.dispose(); + } + const observableMetadata = getObservable(newMetadata); this._metadata = observableMetadata.proxy; this._metadataChangeListener = this._register(observableMetadata.onDidChange(() => { this.updateMetadata(); })); + + this.updateMetadata(); } private _displayOrder: string[] = [];