diff options
Diffstat (limited to 'lib/libc/stdio/fclose.c')
| -rw-r--r-- | lib/libc/stdio/fclose.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/libc/stdio/fclose.c b/lib/libc/stdio/fclose.c new file mode 100644 index 00000000..8f0b4cef --- /dev/null +++ b/lib/libc/stdio/fclose.c @@ -0,0 +1,16 @@ +#include <io.h> +#include <stdio.h> +#include <unistd.h> + +int fclose(FILE *stream) +{ + if (fflush(stream) == -1) + return -1; + + if (stream != stdin && stream != stdout && stream != stderr) { + if (close(stream->fd) == -1) + return -1; + } + + return 0; +} |
