From 92cc41ebd061f9c83802cb9ffa5cd60495c6be9d Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Wed, 26 Sep 2018 15:19:30 +0200 Subject: [PATCH] Handle relative paths (#58694) --- extensions/extension-editing/src/extensionLinter.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/extensions/extension-editing/src/extensionLinter.ts b/extensions/extension-editing/src/extensionLinter.ts index 41b9eddc1b0..8b22ea52c25 100644 --- a/extensions/extension-editing/src/extensionLinter.ts +++ b/extensions/extension-editing/src/extensionLinter.ts @@ -291,23 +291,24 @@ export class ExtensionLinter { } private addDiagnostics(diagnostics: Diagnostic[], document: TextDocument, begin: number, end: number, src: string, context: Context, info: PackageJsonInfo) { + const hasScheme = /^\w[\w\d+.-]*:/.test(src); const uri = parseUri(src, info.repository ? info.repository.toString() : document.uri.toString()); if (!uri) { return; } const scheme = uri.scheme.toLowerCase(); - if (scheme !== 'https' && scheme !== 'data') { + if (hasScheme && scheme !== 'https' && scheme !== 'data') { const range = new Range(document.positionAt(begin), document.positionAt(end)); diagnostics.push(new Diagnostic(range, httpsRequired, DiagnosticSeverity.Warning)); } - if (scheme === 'data') { + if (hasScheme && scheme === 'data') { const range = new Range(document.positionAt(begin), document.positionAt(end)); diagnostics.push(new Diagnostic(range, dataUrlsNotValid, DiagnosticSeverity.Warning)); } - if (!info.hasHttpsRepository) { + if (!hasScheme && !info.hasHttpsRepository) { const range = new Range(document.positionAt(begin), document.positionAt(end)); let message = (() => { switch (context) {