diff --git a/src/html/window.zig b/src/html/window.zig index 251a1cf5..b81c91ba 100644 --- a/src/html/window.zig +++ b/src/html/window.zig @@ -105,8 +105,12 @@ pub const Window = struct { return self.timeoutid; } - pub fn _clearTimeout(self: *Window, loop: *Loop, id: u32) !void { - if (id >= self.timeoutid) return error.InvalidTimeoutId; + pub fn _clearTimeout(self: *Window, loop: *Loop, id: u32) void { + // I do would prefer return an error in this case, but it seems some JS + // uses invalid id, in particular id 0. + // So we silently ignore invalid id for now. + if (id >= self.timeoutid) return; + loop.cancel(self.timeoutids[id], null); } };