diff --git a/src/librustdoc/html/static/main.js b/src/librustdoc/html/static/main.js index 72a01a49bc66d..82d2c11b2497b 100644 --- a/src/librustdoc/html/static/main.js +++ b/src/librustdoc/html/static/main.js @@ -162,8 +162,15 @@ if (!DOMTokenList.prototype.remove) { var i, from, to, match = window.location.hash.match(/^#?(\d+)(?:-(\d+))?$/); if (match) { from = parseInt(match[1], 10); - to = Math.min(50000, parseInt(match[2] || match[1], 10)); - from = Math.min(from, to); + to = from; + if (typeof match[2] !== "undefined") { + to = parseInt(match[2], 10); + } + if (to < from) { + var tmp = to; + to = from; + from = tmp; + } elem = document.getElementById(from); if (!elem) { return; @@ -180,7 +187,11 @@ if (!DOMTokenList.prototype.remove) { }); }); for (i = from; i <= to; ++i) { - addClass(document.getElementById(i), "line-highlighted"); + elem = document.getElementById(i); + if (!elem) { + break; + } + addClass(elem, "line-highlighted"); } } else if (ev !== null && search && !hasClass(search, "hidden") && ev.newURL) { addClass(search, "hidden");