Ejemplo n.º 1
0
/* called when leaving a compiled callback */
void factor_vm::unnest_stacks()
{
	ds = ctx->datastack_save;
	rs = ctx->retainstack_save;

	/* restore per-callback special_objects */
	special_objects[OBJ_CURRENT_CALLBACK] = ctx->current_callback_save;
	special_objects[OBJ_CATCHSTACK] = ctx->catchstack_save;

	context *old_ctx = ctx;
	ctx = old_ctx->next;
	dealloc_context(old_ctx);
}
Ejemplo n.º 2
0
/* called when leaving a compiled callback */
void factor_vm::unnest_stacks()
{
	ds = ctx->datastack_save;
	rs = ctx->retainstack_save;

	/* restore per-callback userenv */
	userenv[CURRENT_CALLBACK_ENV] = ctx->current_callback_save;
	userenv[CATCHSTACK_ENV] = ctx->catchstack_save;

	context *old_ctx = ctx;
	ctx = old_ctx->next;
	dealloc_context(old_ctx);
}