diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js index 3ec470d41..8fcd0920a 100644 --- a/builds/4chan-X.user.js +++ b/builds/4chan-X.user.js @@ -13108,18 +13108,21 @@ cbs = klass.callbacks; fn = function() { var node; - node = nodes[i++]; + if (!(node = nodes[i++])) { + return false; + } cbs.execute(node); return i % 25; }; softTask = function() { while (fn()) { - if (len === i) { - if (cb) { - cb(); - } - return; + continue; + } + if (len === i) { + if (cb) { + cb(); } + return; } return setTimeout(softTask, 0); }; diff --git a/builds/crx/script.js b/builds/crx/script.js index 781b1299d..e8fd2a088 100644 --- a/builds/crx/script.js +++ b/builds/crx/script.js @@ -13085,18 +13085,21 @@ cbs = klass.callbacks; fn = function() { var node; - node = nodes[i++]; + if (!(node = nodes[i++])) { + return false; + } cbs.execute(node); return i % 25; }; softTask = function() { while (fn()) { - if (len === i) { - if (cb) { - cb(); - } - return; + continue; + } + if (len === i) { + if (cb) { + cb(); } + return; } return setTimeout(softTask, 0); }; diff --git a/src/General/Main.coffee b/src/General/Main.coffee index 4caf10189..5f55eb995 100755 --- a/src/General/Main.coffee +++ b/src/General/Main.coffee @@ -182,15 +182,16 @@ Main = cbs = klass.callbacks fn = -> - node = nodes[i++] + return false unless node = nodes[i++] cbs.execute node i % 25 softTask = -> while fn() - if len is i - cb() if cb - return + continue + if len is i + cb() if cb + return setTimeout softTask, 0 len = nodes.length