да, подстрока Вам не нужно делать Math.min; подстрока с более длинным индексом, чем длина строки, заканчивается исходной длиной.
Но!
document.getElementById("foo").innerHTML = "<a href='" + pathname +"'>" + pathname +"</a>"
Это ошибка. Что если в document.referrer есть апостроф? Или различные другие символы, которые имеют особое значение в HTML. В худшем случае код злоумышленника в реферере может внедрить JavaScript на вашу страницу, что является дырой в безопасности XSS.
Хотя можно избежать символов в pathname вручную, чтобы остановить это, это немного болезненно. Вам лучше использовать методы DOM, чем возиться со строками innerHTML.
if (document.referrer) {
var trimmed= document.referrer.substring(0, 64);
var link= document.createElement('a');
link.href= document.referrer;
link.appendChild(document.createTextNode(trimmed));
document.getElementById('foo').appendChild(link);
}