From 317f4657c18f12ba72c0d79ff01de2912ea370ca Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Thu, 29 Jan 2026 18:05:44 -0500 Subject: [PATCH] simplify generated code a bit more --- .../3-transform/server/visitors/RegularElement.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/svelte/src/compiler/phases/3-transform/server/visitors/RegularElement.js b/packages/svelte/src/compiler/phases/3-transform/server/visitors/RegularElement.js index f9650d8701..0aecb38b00 100644 --- a/packages/svelte/src/compiler/phases/3-transform/server/visitors/RegularElement.js +++ b/packages/svelte/src/compiler/phases/3-transform/server/visitors/RegularElement.js @@ -236,18 +236,19 @@ export function RegularElement(node, context) { } if (optimiser.is_async()) { - let statement = create_child_block( - b.block([optimiser.apply(), ...state.init, ...build_template(state.template)]), - optimiser.has_await - ); + let statements = [...state.init, ...build_template(state.template)]; + + if (optimiser.has_await) { + statements = [create_child_block(b.block([optimiser.apply(), ...statements]), true)]; + } const blockers = optimiser.blockers(); if (blockers.elements.length > 0) { - statement = create_async_block(b.block([statement]), blockers, false, false); + statements = [create_async_block(b.block(statements), blockers, false, false)]; } - context.state.template.push(statement); + context.state.template.push(...statements); } else { context.state.init.push(...state.init); context.state.template.push(...state.template);