diff --git a/src/vs/workbench/parts/snippets/electron-browser/snippetsService.ts b/src/vs/workbench/parts/snippets/electron-browser/snippetsService.ts index dce33c0e97cce82b0083c2f531b4804fe74d457d..3c7ac102e4359c28f2e818cf077ef5d36693322e 100644 --- a/src/vs/workbench/parts/snippets/electron-browser/snippetsService.ts +++ b/src/vs/workbench/parts/snippets/electron-browser/snippetsService.ts @@ -107,6 +107,7 @@ namespace snippetExt { }; export const point = ExtensionsRegistry.registerExtensionPoint({ + isDynamic: true, extensionPoint: 'snippets', deps: [languagesExtPoint], jsonSchema: snippetExt.snippetsContribution @@ -207,6 +208,13 @@ class SnippetsService implements ISnippetsService { private _initExtensionSnippets(): void { snippetExt.point.setHandler(extensions => { + + this._files.forEach((value, key) => { + if (value.source === SnippetSource.Extension) { + this._files.delete(key); + } + }); + for (const extension of extensions) { for (const contribution of extension.value) { const validContribution = snippetExt.toValidSnippet(extension, contribution, this._modeService);