Lines Matching defs:origfd
1609 * copy file <origfd> into a save place
1611 * if <origfd> < 0, then -origfd is saved, but not duped so that it
1614 void sh_iosave(Shell_t *shp, register int origfd, int oldtop, char *name)
1622 if(filemap[savefd].orig_fd == origfd)
1645 if(origfd <0)
1647 savefd = origfd;
1648 origfd = -origfd;
1653 if((savefd = sh_fcntl(origfd, F_DUPFD, 10)) < 0 && errno!=EBADF)
1662 filemap[shp->topfd].orig_fd = origfd;
1668 VALIDATE_FD(shp, origfd);
1671 sp = shp->sftable[origfd];
1674 if(origfd==job.fd)
1676 shp->fdstatus[savefd] = shp->fdstatus[origfd];
1681 if(origfd <=2)
1688 shp->sftable[origfd] = 0;
1717 register int origfd, savefd, fd;
1734 origfd = filemap[fd].orig_fd;
1735 VALIDATE_FD(shp, origfd);
1736 if(origfd<0)
1746 ftruncate(origfd,lseek(origfd,0,SEEK_CUR));
1749 sh_close(origfd);
1753 sh_fcntl(savefd, F_DUPFD, origfd);
1755 job.fd=origfd;
1756 shp->fdstatus[origfd] = shp->fdstatus[savefd];
1758 if(shp->fdstatus[origfd]&IOCLEX)
1759 fcntl(origfd,F_SETFD,FD_CLOEXEC);
1760 if(origfd<=2)
1762 sfswap(shp->sftable[savefd],shp->sftable[origfd]);
1763 if(origfd==0)
1767 shp->sftable[origfd] = shp->sftable[savefd];
1772 shp->fdstatus[origfd] = IOCLOSE;