* fhandler_termios.cc (fhandler_termios::line_edit): Fix condition
for writing remaining bytes in readahead buffer in non-canonical mode.
This commit is contained in:
parent
3667a9f444
commit
31c123f982
|
@ -1,3 +1,8 @@
|
|||
2015-02-26 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* fhandler_termios.cc (fhandler_termios::line_edit): Fix condition
|
||||
for writing remaining bytes in readahead buffer in non-canonical mode.
|
||||
|
||||
2015-02-25 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* sec_acl.cc (setacl): Always grant default owner entry
|
||||
|
|
|
@ -393,14 +393,16 @@ fhandler_termios::line_edit (const char *rptr, size_t nread, termios& ti,
|
|||
}
|
||||
|
||||
/* If we didn't write all bytes in non-canonical mode, write them now. */
|
||||
if (!iscanon && ralen > 0)
|
||||
{
|
||||
if (ret == line_edit_ok)
|
||||
if (!iscanon && ralen > 0
|
||||
&& (ret == line_edit_ok || ret == line_edit_input_done))
|
||||
{
|
||||
int status = accept_input ();
|
||||
if (status != 1)
|
||||
{
|
||||
ret = status ? line_edit_error : line_edit_pipe_full;
|
||||
nread += ralen;
|
||||
}
|
||||
else
|
||||
ret = line_edit_input_done;
|
||||
}
|
||||
|
||||
|
|
|
@ -56,3 +56,9 @@ Bug Fixes
|
|||
|
||||
- Fix a potential heap corruption in mkgroup and mkpasswd when enumerating
|
||||
Unix users.
|
||||
|
||||
- Regression in 1.7.34: A patch to the pty handling fixing the problem
|
||||
reported in https://cygwin.com/ml/cygwin-developers/2014-11/msg00000.html
|
||||
was incomplete and lead to undesired buffering in non-canonical mode.
|
||||
This should be fixed now.
|
||||
Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00608.html
|
||||
|
|
Loading…
Reference in New Issue