diff --git a/.changeset/good-laws-sin.md b/.changeset/good-laws-sin.md new file mode 100644 index 0000000000..38d3d3bfc8 --- /dev/null +++ b/.changeset/good-laws-sin.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: account for mutations in script module in ownership check diff --git a/packages/svelte/src/internal/client/dev/ownership.js b/packages/svelte/src/internal/client/dev/ownership.js index 64f424e1a9..d113d9ae90 100644 --- a/packages/svelte/src/internal/client/dev/ownership.js +++ b/packages/svelte/src/internal/client/dev/ownership.js @@ -59,6 +59,9 @@ export function get_component() { } for (const module of modules) { + if (module.end == null) { + return null; + } if (module.start.line < entry.line && module.end.line > entry.line) { return module.component; } diff --git a/packages/svelte/tests/runtime-runes/samples/mutate-state-in-context-dev/_config.js b/packages/svelte/tests/runtime-runes/samples/mutate-state-in-context-dev/_config.js new file mode 100644 index 0000000000..ed0ead960b --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/mutate-state-in-context-dev/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + compileOptions: { + dev: true + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/mutate-state-in-context-dev/main.svelte b/packages/svelte/tests/runtime-runes/samples/mutate-state-in-context-dev/main.svelte new file mode 100644 index 0000000000..ff6f816912 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/mutate-state-in-context-dev/main.svelte @@ -0,0 +1,6 @@ + + +