X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/503ddb97f09d163e0b616892dd13d0903fd7d71e..d51cdf1ec35ccb54cf20edfdf1a0b6e3f2044a9b:/window.c diff --git a/window.c b/window.c index 3c67ddf4..6eeac941 100644 --- a/window.c +++ b/window.c @@ -3027,14 +3027,17 @@ void beep(int mode) * active one. So we limit the rate to one per 50ms or so. */ static long lastbeep = 0; - long now, beepdiff; + long beepdiff; - now = GetTickCount(); - beepdiff = now - lastbeep; + beepdiff = GetTickCount() - lastbeep; if (beepdiff >= 0 && beepdiff < 50) return; MessageBeep(MB_OK); - lastbeep = now; + /* + * The above MessageBeep call takes time, so we record the + * time _after_ it finishes rather than before it starts. + */ + lastbeep = GetTickCount(); } else if (mode == BELL_WAVEFILE) { if (!PlaySound(cfg.bell_wavefile, NULL, SND_ASYNC | SND_FILENAME)) { char buf[sizeof(cfg.bell_wavefile) + 80];