mirror of
https://github.com/vim/vim.git
synced 2025-11-15 23:14:06 -05:00
patch 8.0.1657: crash when reading a channel
Problem: Crash when reading a channel.
Solution: Clear the write flag before writing. (idea by Shinya Ohyanagi,
closes #2769).
This commit is contained in:
@@ -4150,8 +4150,9 @@ channel_select_check(int ret_in, void *rfds_in, void *wfds_in)
|
||||
if (ret > 0 && in_part->ch_fd != INVALID_FD
|
||||
&& FD_ISSET(in_part->ch_fd, wfds))
|
||||
{
|
||||
channel_write_input(channel);
|
||||
/* Clear the flag first, ch_fd may change in channel_write_input(). */
|
||||
FD_CLR(in_part->ch_fd, wfds);
|
||||
channel_write_input(channel);
|
||||
--ret;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user