diff --git a/crates/gpui/src/executor.rs b/crates/gpui/src/executor.rs index 3035892d7a17f23ee8db80ef4fdb3ad593e755ae..34132d72f841c20e3f97bf5cdf49200c0a56b568 100644 --- a/crates/gpui/src/executor.rs +++ b/crates/gpui/src/executor.rs @@ -328,6 +328,9 @@ impl BackgroundExecutor { /// Depending on other concurrent tasks the elapsed duration may be longer /// than requested. pub fn timer(&self, duration: Duration) -> Task<()> { + if duration.is_zero() { + return Task::ready(()); + } let (runnable, task) = async_task::spawn(async move {}, { let dispatcher = self.dispatcher.clone(); move |runnable| dispatcher.dispatch_after(duration, runnable)