diff --git a/packages/svelte/src/internal/client/reactivity/async.js b/packages/svelte/src/internal/client/reactivity/async.js index 6ee97b86c3..e65dabb5e3 100644 --- a/packages/svelte/src/internal/client/reactivity/async.js +++ b/packages/svelte/src/internal/client/reactivity/async.js @@ -275,14 +275,16 @@ export function run(thunks) { }) .catch(handle_error); - promise.finally(() => { - settled_promises.add(promise); + const p = promise; + + p.finally(() => { + settled_promises.add(p); unset_context(); current_batch?.deactivate(); }); - promises.push(promise); + promises.push(p); } promise