diff options
author | Christopher Faylor <me@cgf.cx> | 2003-10-24 01:13:22 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2003-10-24 01:13:22 +0000 |
commit | e64a50ed4e8ac5a57c1728b17ff24f866a9ad6cf (patch) | |
tree | 59bdc94b4eba5dc2adf976c8d66b2a8471ca7ec6 /winsup/cygwin/fhandler_tty.cc | |
parent | 3ef05bac2186796b243975c501ae824328389f94 (diff) | |
download | cygnal-e64a50ed4e8ac5a57c1728b17ff24f866a9ad6cf.tar.gz cygnal-e64a50ed4e8ac5a57c1728b17ff24f866a9ad6cf.tar.bz2 cygnal-e64a50ed4e8ac5a57c1728b17ff24f866a9ad6cf.zip |
* fhandler_tty.cc (fhandler_tty_slave::ioctl): Properly set return value in
FIONBIO case.
Diffstat (limited to 'winsup/cygwin/fhandler_tty.cc')
-rw-r--r-- | winsup/cygwin/fhandler_tty.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc index 0629f2d3f..377a875fa 100644 --- a/winsup/cygwin/fhandler_tty.cc +++ b/winsup/cygwin/fhandler_tty.cc @@ -1025,6 +1025,7 @@ fhandler_tty_slave::ioctl (unsigned int cmd, void *arg) raise (SIGTTOU); } + int retval; switch (cmd) { case TIOCGWINSZ: @@ -1033,6 +1034,7 @@ fhandler_tty_slave::ioctl (unsigned int cmd, void *arg) break; case FIONBIO: set_nonblocking (*(int *) arg); + retval = 0; goto out; default: set_errno (EINVAL); @@ -1086,14 +1088,14 @@ fhandler_tty_slave::ioctl (unsigned int cmd, void *arg) } release_output_mutex (); - -out: - int retval = get_ttyp ()->ioctl_retval; + retval = get_ttyp ()->ioctl_retval; if (retval < 0) { set_errno (-retval); retval = -1; } + +out: termios_printf ("%d = ioctl (%x)", retval, cmd); return retval; } |