Commit 354597f0 authored by David Lawrence Ramsey's avatar David Lawrence Ramsey
Browse files

in get_get_buffer(), die gracefully if input fails MAX_BUF_SIZE times,

not (MAX_BUF_SIZE + 1) times


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3321 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
No related merge requests found
Showing with 5 additions and 5 deletions
+5 -5
......@@ -62,8 +62,8 @@ CVS code -
matches the manual page. (DLR)
- winio.c:
get_key_buffer()
- If we fail to get a character over MAX_BUF_SIZE times in a
row, hang up regardless of the value of errno. This fixes a
- If we fail to get a character MAX_BUF_SIZE times in a row,
hang up regardless of the value of errno. This fixes a
problem where nano doesn't terminate properly under xterm if
the user su's to root, runs nano, and then closes the terminal
window. errno isn't set properly to EIO then. (DLR, found by
......
......@@ -141,12 +141,12 @@ void get_key_buffer(WINDOW *win)
while ((input = wgetch(win)) == ERR) {
errcount++;
/* If we've failed to get a character over MAX_BUF_SIZE times in
* a row, assume that the input source we were using is gone and
/* If we've failed to get a character MAX_BUF_SIZE times in a
* row, assume that the input source we were using is gone and
* die gracefully. We could check if errno is set to EIO
* ("Input/output error") and die gracefully in that case, but
* it's not always set properly. Argh. */
if (errcount > MAX_BUF_SIZE)
if (errcount == MAX_BUF_SIZE)
handle_hupterm(0);
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment