about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <p.stephenson@samsung.com>2018-07-30 15:39:51 +0100
committerPeter Stephenson <p.stephenson@samsung.com>2018-07-30 15:39:51 +0100
commite6f2d776d3ce582533fc6177082270872fcf67a3 (patch)
tree17020836208a766fd0fd48826d92e4e4be5caaa0
parentb5f0ad8e7b6c754bfbcd96cbdc9e98ac2a8d2188 (diff)
downloadzsh-e6f2d776d3ce582533fc6177082270872fcf67a3.tar.gz
zsh-e6f2d776d3ce582533fc6177082270872fcf67a3.tar.xz
zsh-e6f2d776d3ce582533fc6177082270872fcf67a3.zip
43225: Recalculate ZLE timeout.
Needed when looping owing to having handled a special fd.
-rw-r--r--ChangeLog5
-rw-r--r--Src/Zle/zle_main.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index e56749981..465320208 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-07-30  Peter Stephenson  <p.stephenson@samsung.com>
+
+	* 43225: Src/Zle/zle_main.c: recalculate timeout after calling
+	handler within ZLE raw read.
+
 2018-07-29  Matthew Martin  <phy1729@gmail.com>
 
 	* 43185: Completion/Zsh/Type/_command_names: Use [ suffix for
diff --git a/Src/Zle/zle_main.c b/Src/Zle/zle_main.c
index 99e44a744..7ec8afeb6 100644
--- a/Src/Zle/zle_main.c
+++ b/Src/Zle/zle_main.c
@@ -804,6 +804,8 @@ raw_getbyte(long do_keytmout, char *cptr)
 		}
 # endif
 	    }
+	    /* If looping, need to recalculate timeout */
+	    calc_timeout(&tmout, do_keytmout);
 	}
 # ifdef HAVE_POLL
 	zfree(fds, sizeof(struct pollfd) * nfds);