You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At line 58 the run_queue flag is set to true if there are no pending entries in the subscription queue1. After the queue has finished running, the queue is emptied by calling subscriber_queue.length = 0 at line 67. In the event that an un-handled exception is raised from one of the subscribers, the function exits without clearing subscriber_queue. These dangling items cause the check on line 58 to always return false, preventing the dispatch loop from running until the page is reloaded.
Describe the bug
If any svelte store subscriber raises an un-handled exception, future calls to
.set()
on any store will not notify subscribers.In file
svelte/src/store/index.js:58
in functionset()
:At line 58 the
run_queue
flag is set totrue
if there are no pending entries in the subscription queue1. After the queue has finished running, the queue is emptied by callingsubscriber_queue.length = 0
at line 67. In the event that an un-handled exception is raised from one of the subscribers, the function exits without clearingsubscriber_queue
. These dangling items cause the check on line 58 to always returnfalse
, preventing the dispatch loop from running until the page is reloaded.Reproduction
https://svelte.dev/repl/7521a9a8fc53451bbc1b229eb50dd587?version=4.2.16
Logs
No response
System Info
Severity
annoyance
Footnotes
This behavior was first introduced in
46c9dbe4
. ↩The text was updated successfully, but these errors were encountered: