diff --git a/src/vs/workbench/services/languageStatus/common/languageStatusService.ts b/src/vs/workbench/services/languageStatus/common/languageStatusService.ts index 68a0c175862ee4e598ac8d9953c7541f73827f72..e98997649334ff06a183b82f82902b186f1b89fe 100644 --- a/src/vs/workbench/services/languageStatus/common/languageStatusService.ts +++ b/src/vs/workbench/services/languageStatus/common/languageStatusService.ts @@ -60,11 +60,14 @@ class LanguageStatusServiceImpl implements ILanguageStatusService { getLanguageStatus(model: ITextModel): ILanguageStatus[] { return this._provider.ordered(model).sort((a, b) => { - if (a.severity !== b.severity) { - return b.severity - a.severity; - } else { - return compare(a.id, b.id); + let res = b.severity - a.severity; + if (res === 0) { + res = compare(a.source, b.source); } + if (res === 0) { + res = compare(a.id, b.id); + } + return res; }); } }