fix native-stacktrace interaction with thread start

Repairs 4d3852ae69.
This commit is contained in:
Matthew Flatt 2015-10-06 19:06:07 -06:00
parent a5f6bf34dc
commit 85c1ba55f3
3 changed files with 4 additions and 1 deletions

View File

@ -3663,7 +3663,8 @@ static int more_common0(mz_jit_state *jitter, void *_data)
jit_ret();
CHECK_LIMIT();
scheme_jit_register_sub_func(jitter, sjc.thread_start_child_code, scheme_eof);
/* No scheme_jit_register_sub_func, because we don't want to try to
traverse past this frame for a native stack trace. */
}
return 1;

View File

@ -719,6 +719,7 @@ void *scheme_module_start_start(struct Start_Module_Args *a, Scheme_Object *name
}
void scheme_thread_start_child(Scheme_Thread *child, Scheme_Object *child_thunk)
XFORM_SKIP_PROC
{
Thread_Start_Child_Proc proc = (Thread_Start_Child_Proc)sjc.thread_start_child_code;
if (proc)

View File

@ -3168,6 +3168,7 @@ static void start_child(Scheme_Thread * volatile child,
}
void scheme_do_thread_start_child(Scheme_Thread *child, Scheme_Object *child_eval)
XFORM_SKIP_PROC
{
return start_child(child, child_eval);
}