X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=src%2Fstdio%2Ffreopen.c;h=5b4f126dbddbcf4c9c11c5d177e48345e197be29;hp=8d3af9fc0862e6650426c1a0f7c1d8588afd7dfe;hb=708c91f4e9be2cfd6d35e71361956e13f3201b85;hpb=0b44a0315b47dd8eced9f3b7f31580cf14bbfc01 diff --git a/src/stdio/freopen.c b/src/stdio/freopen.c index 8d3af9fc..5b4f126d 100644 --- a/src/stdio/freopen.c +++ b/src/stdio/freopen.c @@ -7,7 +7,7 @@ /* Locking is not necessary because, in the event of failure, the stream * passed to freopen is invalid as soon as freopen is called. */ -FILE *freopen(const char *filename, const char *mode, FILE *f) +FILE *freopen(const char *restrict filename, const char *restrict mode, FILE *restrict f) { int fl; FILE *f2; @@ -17,13 +17,13 @@ FILE *freopen(const char *filename, const char *mode, FILE *f) if (!filename) { f2 = fopen("/dev/null", mode); if (!f2) goto fail; - fl = __syscall_fcntl(f2->fd, F_GETFL, 0); - if (fl < 0 || __syscall_fcntl(f->fd, F_SETFL, fl) < 0) + fl = __syscall(SYS_fcntl, f2->fd, F_GETFL, 0); + if (syscall(SYS_fcntl, f->fd, F_SETFL, fl) < 0) goto fail2; } else { f2 = fopen(filename, mode); if (!f2) goto fail; - if (__syscall_dup2(f2->fd, f->fd) < 0) + if (syscall(SYS_dup2, f2->fd, f->fd) < 0) goto fail2; } @@ -32,7 +32,6 @@ FILE *freopen(const char *filename, const char *mode, FILE *f) f->write = f2->write; f->seek = f2->seek; f->close = f2->close; - f->flush = f2->flush; fclose(f2); return f;