diff options
author | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-15 07:29:18 +0200 |
---|---|---|
committer | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-15 07:29:18 +0200 |
commit | ae14556114dcae29f679db7c15f0bc9b707bb89a (patch) | |
tree | b7f02d4463293a5fb0f3823bd48230a142c5a42d /toolkit/components | |
parent | 8a95c03dcd2a7f2c6d64b6ee917f6cb363e9ca60 (diff) | |
download | UXP-ae14556114dcae29f679db7c15f0bc9b707bb89a.tar UXP-ae14556114dcae29f679db7c15f0bc9b707bb89a.tar.gz UXP-ae14556114dcae29f679db7c15f0bc9b707bb89a.tar.lz UXP-ae14556114dcae29f679db7c15f0bc9b707bb89a.tar.xz UXP-ae14556114dcae29f679db7c15f0bc9b707bb89a.zip |
moebius#130: URL parser - fix: don't allow empty host name
https://github.com/MoonchildProductions/moebius/issues/130
Diffstat (limited to 'toolkit/components')
-rw-r--r-- | toolkit/components/passwordmgr/test/unit/test_logins_search.js | 1 | ||||
-rw-r--r-- | toolkit/components/places/UnifiedComplete.js | 2 | ||||
-rw-r--r-- | toolkit/components/places/nsNavHistory.cpp | 4 |
3 files changed, 5 insertions, 2 deletions
diff --git a/toolkit/components/passwordmgr/test/unit/test_logins_search.js b/toolkit/components/passwordmgr/test/unit/test_logins_search.js index 188c75039..730771981 100644 --- a/toolkit/components/passwordmgr/test/unit/test_logins_search.js +++ b/toolkit/components/passwordmgr/test/unit/test_logins_search.js @@ -192,7 +192,6 @@ add_task(function test_search_all_full_case_sensitive() { checkAllSearches({ hostname: "http://www.example.com" }, 1); checkAllSearches({ hostname: "http://www.example.com/" }, 0); - checkAllSearches({ hostname: "http://" }, 0); checkAllSearches({ hostname: "example.com" }, 0); checkAllSearches({ formSubmitURL: "http://www.example.com" }, 2); diff --git a/toolkit/components/places/UnifiedComplete.js b/toolkit/components/places/UnifiedComplete.js index ad3d35aab..acd358b11 100644 --- a/toolkit/components/places/UnifiedComplete.js +++ b/toolkit/components/places/UnifiedComplete.js @@ -1245,7 +1245,7 @@ Search.prototype = { // * If the protocol differs we should not match. For example if the user // searched https we should not return http. try { - let prefixURI = NetUtil.newURI(this._strippedPrefix); + let prefixURI = NetUtil.newURI(this._strippedPrefix + match.token); let finalURI = NetUtil.newURI(match.url); if (prefixURI.scheme != finalURI.scheme) return false; diff --git a/toolkit/components/places/nsNavHistory.cpp b/toolkit/components/places/nsNavHistory.cpp index 8cf3a2e32..7f4007c1a 100644 --- a/toolkit/components/places/nsNavHistory.cpp +++ b/toolkit/components/places/nsNavHistory.cpp @@ -949,6 +949,10 @@ nsresult // static nsNavHistory::AsciiHostNameFromHostString(const nsACString& aHostName, nsACString& aAscii) { + aAscii.Truncate(); + if (aHostName.IsEmpty()) { + return NS_OK; + } // To properly generate a uri we must provide a protocol. nsAutoCString fakeURL("http://"); fakeURL.Append(aHostName); |