# HG changeset patch # User Bram Moolenaar # Date 1318446260 -7200 # Node ID 176bfa951339a0a36366cbc8def41ae75f5034e0 # Parent d729ca08d1a6f2c24ed335f33ca8f23a4173ce03 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) diff --git a/src/os_unix.c b/src/os_unix.c --- 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) diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -710,6 +710,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 337, +/**/ 336, /**/ 335,