From 2bbf4d902fd09fe5353b05900e6dc967cbbe8f4d Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Thu, 11 Jan 2018 17:36:05 +0900 Subject: [PATCH] Fix isSameOrigin() with relative URLs --- common/js/common.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/common/js/common.js b/common/js/common.js index b676fc8c6..b1ed8e432 100644 --- a/common/js/common.js +++ b/common/js/common.js @@ -33,7 +33,12 @@ * @brief Check if two URLs belong to the same origin */ window.isSameOrigin = function(url1, url2) { - if(!url1 || !url2) return false; + if(!url1 || !url2) { + return false; + } + if (url1.match(/^\.?\/[^\/]*/) || url2.match(/^\.?\/[^\/]*/)) { + return true; + } url1 = window.XE.URI(url1).normalizePort().normalizePathname().origin(); url2 = window.XE.URI(url2).normalizePort().normalizePathname().origin(); return (url1 === url2) ? true : false; @@ -203,7 +208,7 @@ if (typeof url !== "string") { return false; } - if (url.match(/^\/[^\/]/)) { + if (url.match(/^\.?\/[^\/]*/)) { return true; } if (url.match(/^\w+:[^\/]*$/)) {