aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorRong-En Fan <rafan@FreeBSD.org>2009-10-26 13:03:52 +0000
committerRong-En Fan <rafan@FreeBSD.org>2009-10-26 13:03:52 +0000
commite99c18762e6e0231123273425da5fa5f51997b70 (patch)
tree75878e75249d191b05a21a57a8be3fb6b16ef388 /contrib
parent84f620d3e2c6019cf66dfb89dd5c9cb1a980fac3 (diff)
parent90f241383ea9bf3c9fb230e79e49f6602ddcb113 (diff)
downloadsrc-e99c18762e6e0231123273425da5fa5f51997b70.tar.gz
src-e99c18762e6e0231123273425da5fa5f51997b70.zip
Merge r198489 from vendor/ncurses/dist:
Pull upstream patch to fix ee(1) crash when received SIGWINCH: modify _nc_wgetch() to check for a -1 in the fifo, e.g., after a SIGWINCH, and discard that value, to avoid confusing application (patch by Eygene Ryabinkin, FreeBSD bin/136223). PR: 136223 Submitted by: Eygene Ryabinkin Obtained from: ncurses-5.7-20091024 snapshot MFC after: 3 days
Notes
Notes: svn path=/head/; revision=198490
Diffstat (limited to 'contrib')
-rw-r--r--contrib/ncurses/ncurses/base/lib_getch.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/contrib/ncurses/ncurses/base/lib_getch.c b/contrib/ncurses/ncurses/base/lib_getch.c
index a3812bee76e8..e7ba0b210e34 100644
--- a/contrib/ncurses/ncurses/base/lib_getch.c
+++ b/contrib/ncurses/ncurses/base/lib_getch.c
@@ -476,6 +476,12 @@ _nc_wgetch(WINDOW *win,
/* resizeterm can push KEY_RESIZE */
if (cooked_key_in_fifo()) {
*result = fifo_pull(sp);
+ /*
+ * Get the ERR from queue -- it is from WINCH,
+ * so we should take it out, the "error" is handled.
+ */
+ if (fifo_peek(sp) == -1)
+ fifo_pull(sp);
returnCode(*result >= KEY_MIN ? KEY_CODE_YES : OK);
}
}