* 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:
nobu 2018-09-18 00:22:04 +00:00
Родитель 7c5d475d29
Коммит eddd630047
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -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;
} }