patch 8.1.0840: getchar(0) never returns a character in the terminal
Problem: getchar(0) never returns a character in the terminal.
Solution: Call wait_func() at least once.
diff --git a/src/gui_w32.c b/src/gui_w32.c
index c5e5879..ead617a 100644
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -2097,12 +2097,14 @@
s_timed_out = FALSE;
- if (wtime > 0)
+ if (wtime >= 0)
{
- /* Don't do anything while processing a (scroll) message. */
+ // Don't do anything while processing a (scroll) message.
if (s_busy_processing)
return FAIL;
- s_wait_timer = (UINT)SetTimer(NULL, 0, (UINT)wtime,
+
+ // When called with "wtime" zero, just want one msec.
+ s_wait_timer = (UINT)SetTimer(NULL, 0, (UINT)(wtime == 0 ? 1 : wtime),
(TIMERPROC)_OnTimer);
}