summaryrefslogtreecommitdiff
path: root/src/stdio/freopen.c
AgeCommit message (Collapse)AuthorLines
2012-10-24greatly improve freopen behaviorRich Felker-7/+10
1. don't open /dev/null just as a basis to copy flags; use shared __fmodeflags function to get the right file flags for the mode. 2. handle the case (probably invalid, but whatever) case where the original stream's file descriptor was closed; previously, the logic re-closed it. 3. accept the "e" mode flag for close-on-exec; update dup3 to fallback to using dup2 so we can simply call __dup3 instead of putting fallback logic in freopen itself.
2012-10-24remove useless failure-check from freopen (can't happen)Rich Felker-2/+2
2012-09-06use restrict everywhere it's required by c99 and/or posix 2008Rich Felker-1/+1
to deal with the fact that the public headers may be used with pre-c99 compilers, __restrict is used in place of restrict, and defined appropriately for any supported compiler. we also avoid the form [restrict] since older versions of gcc rejected it due to a bug in the original c99 standard, and instead use the form *restrict.
2012-06-19remove flush hook cruft that was never used from stdioRich Felker-1/+0
there is no need/use for a flush hook. the write function serves this purpose already. i originally created the hook for implementing mem streams based on a mistaken reading of posix, and later realized it wasn't useful but never removed it until now.
2011-03-20global cleanup to use the new syscall interfaceRich Felker-3/+3
2011-02-12initial check-in, version 0.5.0v0.5.0Rich Felker-0/+47