Mercurial > vim
changeset 3133:176bfa951339 v7.3.337
updated for version 7.3.337
Problem: Screen doesn't update after resizing the xterm until a character
is typed.
Solution: When the select call is interrupted check do_resize. (Taylor
Hedberg)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Wed, 12 Oct 2011 21:04:20 +0200 |
parents | d729ca08d1a6 |
children | e8f3119f5d09 |
files | src/os_unix.c src/version.c |
diffstat | 2 files changed, 9 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/os_unix.c +++ b/src/os_unix.c @@ -5146,11 +5146,18 @@ select_eintr: # endif # ifdef EINTR if (ret == -1 && errno == EINTR) + { + /* Check whether window has been resized, EINTR may be caused by + * SIGWINCH. */ + if (do_resize) + handle_resize(); + /* Interrupted by a signal, need to try again. We ignore msec * here, because we do want to check even after a timeout if * characters are available. Needed for reading output of an * external command after the process has finished. */ goto select_eintr; + } # endif # ifdef __TANDEM if (ret == -1 && errno == ENOTSUP)