From 0a239b703c8c7fde5540ce63c4236522a22ee049 Mon Sep 17 00:00:00 2001 From: jmoenig Date: Thu, 11 Dec 2014 14:17:29 +0100 Subject: yield after each cycle in the experimental “forEach” primitive MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit thanks, Bernat, for reporting this bug! --- history.txt | 4 ++++ threads.js | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/history.txt b/history.txt index ff38bfb..edbf4d0 100755 --- a/history.txt +++ b/history.txt @@ -2390,3 +2390,7 @@ ______ 141206 ------ * Store: Fixed #668 + +141211 +------ +* Threads: yield after each cycle in the experimental “forEach” primitive diff --git a/threads.js b/threads.js index c21375e..b80ee9e 100644 --- a/threads.js +++ b/threads.js @@ -83,7 +83,7 @@ ArgLabelMorph, localize, XML_Element, hex_sha512*/ // Global stuff //////////////////////////////////////////////////////// -modules.threads = '2014-December-04'; +modules.threads = '2014-December-11'; var ThreadManager; var Process; @@ -1695,6 +1695,7 @@ Process.prototype.doForEach = function (upvar, list, script) { ); if (index > list.length()) {return; } this.context.inputs[3] += 1; + this.pushContext('doYield'); this.pushContext(); this.evaluate(script, new List(), true); }; -- cgit v1.3.1