diff --git a/.changeset/good-laws-sin.md b/.changeset/good-laws-sin.md new file mode 100644 index 000000000000..38d3d3bfc87b --- /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 64f424e1a993..d113d9ae9018 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 000000000000..ed0ead960bdb --- /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 000000000000..ff6f81691249 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/mutate-state-in-context-dev/main.svelte @@ -0,0 +1,6 @@ + + +