diff --git a/history.txt b/history.txt index 541905ee..c21df561 100755 --- a/history.txt +++ b/history.txt @@ -2196,3 +2196,8 @@ ______ * Threads: fixed #506, thanks @haritop, for both the report and for providing the fix!! * GUI: fixed #412 (incomplete sprite-removal) * GUI: fixed #507 (limit persistent block zoom to 12x), thanks Michael! +* Morphic, GUI, Objects: fixed #508 (don’t popup empty menus), thanks Michael! + +140714 +------ +* Lists: make internal list ops iterative (instead of recursive), thanks, Brian! diff --git a/lists.js b/lists.js index 1674d1c4..c5a7cc62 100644 --- a/lists.js +++ b/lists.js @@ -195,11 +195,11 @@ List.prototype.length = function () { if (this.isLinked) { var pair = this, result = 0; - while (pair.isLinked) { + while (pair && pair.isLinked) { result += 1; pair = pair.rest; } - return result + pair.contents.length; + return result + (pair ? pair.contents.length : 0); } return this.contents.length; };