From fe24f3c89fca9ac7a0f31eb175e3905946727e63 Mon Sep 17 00:00:00 2001 From: mrmr1993 Date: Thu, 10 Sep 2015 21:39:31 +0100 Subject: Don't decode javascript URIs on 46.0.2467.2 and later The fix for Chromium issue 483000 landed in this version, so it is no longer necessary for #1611 --- lib/utils.coffee | 5 +++-- tests/unit_tests/test_chrome_stubs.coffee | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/utils.coffee b/lib/utils.coffee index 90469fad..54cb38d2 100644 --- a/lib/utils.coffee +++ b/lib/utils.coffee @@ -144,7 +144,8 @@ Utils = if Utils.hasChromePrefix string string else if Utils.hasJavascriptPrefix string - Utils.decodeURIByParts string + # In Chrome versions older than 46.0.2467.2, encoded javascript URIs weren't handled correctly by. + if Utils.haveChromeVersion "46.0.2467.2" then string else Utils.decodeURIByParts string else if Utils.isUrl string Utils.createFullUrl string else @@ -176,7 +177,7 @@ Utils = # True if the current Chrome version is at least the required version. haveChromeVersion: (required) -> - chromeVersion = navigator.appVersion.match(/Chrome\/(.*?) /)?[1] + chromeVersion = navigator.appVersion.match(/Chrom(e|ium)\/(.*?) /)?[2] chromeVersion and 0 <= Utils.compareVersions chromeVersion, required # Zip two (or more) arrays: diff --git a/tests/unit_tests/test_chrome_stubs.coffee b/tests/unit_tests/test_chrome_stubs.coffee index 0bb6ed81..8814ab23 100644 --- a/tests/unit_tests/test_chrome_stubs.coffee +++ b/tests/unit_tests/test_chrome_stubs.coffee @@ -8,6 +8,9 @@ exports.window = {} exports.localStorage = {} +global.navigator = + appVersion: "5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36" + global.document = createElement: -> {} addEventListener: -> -- cgit v1.2.3