patch 8.1.0349: crash when wiping buffer in a callback
Problem: Crash when wiping buffer in a callback.
Solution: Do not handle messages when only peeking for a character.
(closes #2107) Add "redraw_flag" to test_override().
diff --git a/src/os_win32.c b/src/os_win32.c
index 02bcaae..9d36dec 100644
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -1529,15 +1529,19 @@
*/
for (;;)
{
+ // Only process messages when waiting.
+ if (msec != 0)
+ {
#ifdef MESSAGE_QUEUE
- parse_queued_messages();
+ parse_queued_messages();
#endif
#ifdef FEAT_MZSCHEME
- mzvim_check_threads();
+ mzvim_check_threads();
#endif
#ifdef FEAT_CLIENTSERVER
- serverProcessPendingMessages();
+ serverProcessPendingMessages();
#endif
+ }
if (0
#ifdef FEAT_MOUSE