зеркало из https://github.com/github/ruby.git
pty.c: more difensive
* ext/pty/pty.c (chfunc): should not close the slave fd if it is 0..2. [ruby-core:89043] [Bug #15116] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
7c5d475d29
Коммит
eddd630047
|
@ -143,7 +143,7 @@ chfunc(void *data, char *errbuf, size_t errbuf_len)
|
||||||
dup2(slave,0);
|
dup2(slave,0);
|
||||||
dup2(slave,1);
|
dup2(slave,1);
|
||||||
dup2(slave,2);
|
dup2(slave,2);
|
||||||
close(slave);
|
if (slave < 0 && slave > 2) (void)!close(slave);
|
||||||
#if defined(HAVE_SETEUID) || defined(HAVE_SETREUID) || defined(HAVE_SETRESUID)
|
#if defined(HAVE_SETEUID) || defined(HAVE_SETREUID) || defined(HAVE_SETRESUID)
|
||||||
if (seteuid(getuid())) ERROR_EXIT("seteuid()");
|
if (seteuid(getuid())) ERROR_EXIT("seteuid()");
|
||||||
#endif
|
#endif
|
||||||
|
@ -233,7 +233,7 @@ ioctl_I_PUSH(int fd, const char *const name)
|
||||||
ret = ioctl(fd, I_FIND, name);
|
ret = ioctl(fd, I_FIND, name);
|
||||||
# endif
|
# endif
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
ret = ioctl(fd, I_PUSH, name);
|
ret = ioctl(fd, I_PUSH, name);
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче