summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--cont.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 902a80b433..a178f3bd89 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Thu May 6 18:12:43 2010 Koichi Sasada <ko1@atdot.net>
+
+ * cont.c (fiber_setcontext): Fix last commit.
+
Thu May 6 17:16:42 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (rb_localtime_r2): get rid of infinite loop bug of
diff --git a/cont.c b/cont.c
index dcbae54584..41519fb048 100644
--- a/cont.c
+++ b/cont.c
@@ -621,6 +621,7 @@ fiber_setcontext(rb_fiber_t *newfib, rb_fiber_t *oldfib)
/* save oldfib's machine stack */
if (oldfib->status != TERMINATED) {
+ SET_MACHINE_STACK_END(&th->machine_stack_end);
switch (stackgrowdirection) {
case STACK_GROW_DOWNWARD:
oldfib->cont.machine_stack_size = th->machine_stack_start - th->machine_stack_end;