1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

Initial revision

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 1998-01-16 12:13:05 +00:00
parent 392296c12d
commit 3db12e8b23
225 changed files with 75935 additions and 0 deletions

36
missing/dup2.c Normal file
View file

@ -0,0 +1,36 @@
/*
* Copyright (c) 1991, Larry Wall
*
* You may distribute under the terms of either the GNU General Public
* License or the Artistic License, as specified in the README file.
*/
#include "defines.h"
#if defined(HAVE_FCNTL) && defined(F_DUPFD)
# include <fcntl.h>
#endif
int
dup2(oldfd,newfd)
int oldfd;
int newfd;
{
#if defined(HAVE_FCNTL) && defined(F_DUPFD)
close(newfd);
return fcntl(oldfd, F_DUPFD, newfd);
#else
int fdtmp[256];
int fdx = 0;
int fd;
if (oldfd == newfd)
return 0;
close(newfd);
while ((fd = dup(oldfd)) != newfd) /* good enough for low fd's */
fdtmp[fdx++] = fd;
while (fdx > 0)
close(fdtmp[--fdx]);
return 0;
#endif
}