futures: fix lightweight-continuation GC bug
Merge to 5.1
(cherry picked from commit 7579b48791
)
This commit is contained in:
parent
e8a0c3c187
commit
b32d2eeaac
|
@ -8516,6 +8516,7 @@ Scheme_Lightweight_Continuation *scheme_capture_lightweight_continuation(Scheme_
|
||||||
|
|
||||||
lw = (Scheme_Lightweight_Continuation *)storage[0];
|
lw = (Scheme_Lightweight_Continuation *)storage[0];
|
||||||
lw->stack_slice = stack;
|
lw->stack_slice = stack;
|
||||||
|
lwc = lw->saved_lwc;
|
||||||
|
|
||||||
len = lwc->runstack_start - lwc->runstack_end;
|
len = lwc->runstack_start - lwc->runstack_end;
|
||||||
runstack_slice = MALLOC_N(Scheme_Object*, len);
|
runstack_slice = MALLOC_N(Scheme_Object*, len);
|
||||||
|
@ -8535,6 +8536,7 @@ Scheme_Lightweight_Continuation *scheme_capture_lightweight_continuation(Scheme_
|
||||||
runstack_slice[i] = 0;
|
runstack_slice[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lwc = lw->saved_lwc;
|
||||||
len = lwc->cont_mark_stack_end - lwc->cont_mark_stack_start;
|
len = lwc->cont_mark_stack_end - lwc->cont_mark_stack_start;
|
||||||
|
|
||||||
if (len) {
|
if (len) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user