diff --git a/lib/url.js b/lib/url.js index ed90e5cad10..a30fa8a9cff 100644 --- a/lib/url.js +++ b/lib/url.js @@ -222,18 +222,14 @@ function urlParse(url, parseQueryString, slashesDenoteHost) { // It only converts the part of the domain name that // has non ASCII characters. I.e. it dosent matter if // you call it with a domain that already is in ASCII. - try { - var domainArray = out.hostname.split('.'); - var newOut = []; - for (var i = 0; i < domainArray.length; ++i) { - var s = domainArray[i]; - newOut.push(s.match(/[^A-Za-z0-9-]/) ? - 'xn--' + punycode.encode(s) : s); - } - out.hostname = newOut.join('.'); - } catch (e) { - // if encode fail for some reason, we just do the classic behavior. + var domainArray = out.hostname.split('.'); + var newOut = []; + for (var i = 0; i < domainArray.length; ++i) { + var s = domainArray[i]; + newOut.push(s.match(/[^A-Za-z0-9-]/) ? + 'xn--' + punycode.encode(s) : s); } + out.hostname = newOut.join('.'); out.host = ((out.auth) ? out.auth + '@' : '') + (out.hostname || '') +