From 34e55d9cb5347c64b237de9053485b1730e2a923 Mon Sep 17 00:00:00 2001 From: Logan McNaughton <848146+loganmc10@users.noreply.github.com> Date: Thu, 28 May 2026 15:54:42 +0200 Subject: [PATCH] fix small speed limiter bug (#975) * fix small speed limiter bug * more --- src/device/vi.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/device/vi.rs b/src/device/vi.rs index 7f1ebd3..1651b02 100644 --- a/src/device/vi.rs +++ b/src/device/vi.rs @@ -141,8 +141,12 @@ pub fn vertical_interrupt_event(device: &mut device::Device) { } } + if speed_limiter_toggled { + reset_pace_deadline(device); + } + if device.vi.vi_counter.is_multiple_of(device.vi.limit_freq) && device.vi.enable_speed_limiter { - speed_limiter(device, speed_limiter_toggled); + speed_limiter(device); } unsafe { sdl3_sys::events::SDL_PumpEvents() }; @@ -182,7 +186,8 @@ pub fn init(device: &mut device::Device) { } } -fn speed_limiter(device: &mut device::Device, mut speed_limiter_toggled: bool) { +fn speed_limiter(device: &mut device::Device) { + let mut speed_limiter_toggled = false; let interval = std::time::Duration::from_secs_f64(device.vi.frame_time * device.vi.limit_freq as f64);