diff --git a/packages/core/src/scheduler/wait.rs b/packages/core/src/scheduler/wait.rs index 2bf6cdfa1..8ae320e70 100644 --- a/packages/core/src/scheduler/wait.rs +++ b/packages/core/src/scheduler/wait.rs @@ -19,7 +19,11 @@ impl VirtualDom { /// queue pub(crate) fn handle_task_wakeup(&mut self, id: TaskId) { let mut tasks = self.scheduler.tasks.borrow_mut(); - let task = &tasks[id.0]; + + let task = match tasks.get(id.0) { + Some(task) => task, + None => return, + }; let waker = task.waker(); let mut cx = Context::from_waker(&waker);