0
0
mirror of https://github.com/vim/vim.git synced 2025-10-18 07:54:29 -04:00

patch 7.4.1230

Problem:    Win32: opening a channel may hang.  Not checking for messages
            while waiting for characters.
Solution:   Add a zero timeout.  Call parse_queued_messages(). (Yasuhiro
            Matsumoto)
This commit is contained in:
Bram Moolenaar
2016-02-01 21:32:58 +01:00
parent fb1f62691e
commit ca568aeec6
2 changed files with 10 additions and 2 deletions

View File

@@ -1461,10 +1461,12 @@ WaitForChar(long msec)
*/ */
for (;;) for (;;)
{ {
#ifdef MESSAGE_QUEUE
parse_queued_messages();
#endif
#ifdef FEAT_MZSCHEME #ifdef FEAT_MZSCHEME
mzvim_check_threads(); mzvim_check_threads();
#endif #endif
#ifdef FEAT_CLIENTSERVER #ifdef FEAT_CLIENTSERVER
serverProcessPendingMessages(); serverProcessPendingMessages();
#endif #endif
@@ -1474,7 +1476,11 @@ WaitForChar(long msec)
maxfd = channel_select_setup(-1, &rfds); maxfd = channel_select_setup(-1, &rfds);
if (maxfd >= 0) if (maxfd >= 0)
{ {
ret = select(maxfd + 1, &rfds, NULL, NULL, NULL); struct timeval tv;
tv.tv_sec = 0;
tv.tv_usec = 0;
ret = select(maxfd + 1, &rfds, NULL, NULL, &tv);
if (ret > 0 && channel_select_check(ret, &rfds) > 0) if (ret > 0 && channel_select_check(ret, &rfds) > 0)
return TRUE; return TRUE;
} }

View File

@@ -742,6 +742,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1230,
/**/ /**/
1229, 1229,
/**/ /**/