[bugfix] call/cc will get caught in an infinite loop if the machine
stack grows upward
This commit is contained in:
parent
0daa4febb0
commit
f323e9d232
|
@ -178,7 +178,7 @@ restore_cont(pic_state *pic, struct pic_fullcont *cont)
|
||||||
if (&v > cont->stk_pos) native_stack_extend(pic, cont);
|
if (&v > cont->stk_pos) native_stack_extend(pic, cont);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (&v > cont->stk_pos + cont->stk_len) native_stack_extend(pic, cont);
|
if (&v < cont->stk_pos + cont->stk_len) native_stack_extend(pic, cont);
|
||||||
}
|
}
|
||||||
|
|
||||||
pic->cc = cont->prev_jmp;
|
pic->cc = cont->prev_jmp;
|
||||||
|
|
Loading…
Reference in New Issue