diff options
author | Bram Moolenaar <Bram@vim.org> | 2018-09-06 13:14:43 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2018-09-06 13:14:43 +0200 |
commit | ed5a9d661248a2160368f1b0ab3a1bf74831db04 (patch) | |
tree | ff7d3eea0f440ae83569fa5f84a4b9a3c831ccc1 /src/os_win32.c | |
parent | e67a7d690a53690eb3c99a1ca7a199e8da159146 (diff) | |
download | vim-git-ed5a9d661248a2160368f1b0ab3a1bf74831db04.tar.gz |
patch 8.1.0349: crash when wiping buffer in a callbackv8.1.0349
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().
Diffstat (limited to 'src/os_win32.c')
-rw-r--r-- | src/os_win32.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/os_win32.c b/src/os_win32.c index 02bcaaede..9d36dec4a 100644 --- a/src/os_win32.c +++ b/src/os_win32.c @@ -1529,15 +1529,19 @@ WaitForChar(long msec, int ignore_input) */ 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 |