mirror of
https://github.com/tsl0922/ttyd.git
synced 2025-12-24 20:54:21 +01:00
pty.c: Fix errant use of fcntl F_SETFD (#951)
* pty.c: Fix errant use of fcntl F_SETFL
When this was added in cfd338ea5e
We before this time the *File descriptor flags* (`F_GETFD`/`F_SETFD`) were augmented to include `FD_CLOEXEC`
Then at this time the additional code added the *File status flags* (`F_GETFL`/`F_SETFL`) to include `O_NONBLOCK`, but this was weaved through code working with `F_SETFD` instead of `F_SETFL`. Some systems may use one big status word for all of them. Mine certainly dont.
FIXES #733
This commit is contained in:
@@ -470,7 +470,7 @@ int pty_spawn(pty_process *process, pty_read_cb read_cb, pty_exit_cb exit_cb) {
|
||||
status = -errno;
|
||||
goto error;
|
||||
}
|
||||
if (fcntl(master, F_SETFD, flags | O_NONBLOCK) == -1) {
|
||||
if (fcntl(master, F_SETFL, flags | O_NONBLOCK) == -1) {
|
||||
status = -errno;
|
||||
goto error;
|
||||
}
|
||||
@@ -502,4 +502,4 @@ error:
|
||||
waitpid(pid, NULL, 0);
|
||||
return status;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user