Skip to content

Commit 3a67f92

Browse files
committed
improve package.json parsing performance. Fixes #18218
1 parent c4440c4 commit 3a67f92

File tree

1 file changed

+4
-8
lines changed

1 file changed

+4
-8
lines changed

src/vs/workbench/node/extensionPoints.ts

+4-8
Original file line numberDiff line numberDiff line change
@@ -84,15 +84,11 @@ class ExtensionManifestParser extends ExtensionManifestHandler {
8484

8585
public parse(): TPromise<IExtensionDescription> {
8686
return pfs.readFile(this._absoluteManifestPath).then((manifestContents) => {
87-
let errors: json.ParseError[] = [];
88-
const extensionDescription = json.parse(manifestContents.toString(), errors);
89-
if (errors.length > 0) {
90-
errors.forEach((error) => {
91-
this._collector.error(this._absoluteFolderPath, nls.localize('jsonParseFail', "Failed to parse {0}: {1}.", this._absoluteManifestPath, json.getParseErrorMessage(error.error)));
92-
});
93-
return null;
87+
try {
88+
return JSON.parse(manifestContents.toString());
89+
} catch (e) {
90+
this._collector.error(this._absoluteFolderPath, nls.localize('jsonParseFail', "Failed to parse {0}: {1}.", this._absoluteManifestPath, json.getParseErrorMessage(e.message)));
9491
}
95-
return extensionDescription;
9692
}, (err) => {
9793
if (err.code === 'ENOENT') {
9894
return null;

0 commit comments

Comments
 (0)