|
|
@ -281,6 +281,8 @@ export function capture() {
|
|
|
|
// prevent the active effect from outstaying its welcome
|
|
|
|
// prevent the active effect from outstaying its welcome
|
|
|
|
if (should_exit) {
|
|
|
|
if (should_exit) {
|
|
|
|
queue_post_micro_task(exit);
|
|
|
|
queue_post_micro_task(exit);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
debugger
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -317,6 +319,7 @@ export async function script_suspend(fn) {
|
|
|
|
const restore = capture();
|
|
|
|
const restore = capture();
|
|
|
|
const unsuspend = suspend();
|
|
|
|
const unsuspend = suspend();
|
|
|
|
try {
|
|
|
|
try {
|
|
|
|
|
|
|
|
exit();
|
|
|
|
return await fn();
|
|
|
|
return await fn();
|
|
|
|
} finally {
|
|
|
|
} finally {
|
|
|
|
restore(false);
|
|
|
|
restore(false);
|
|
|
|