diff options
Diffstat (limited to 'newlib/libc/stdio/fdopen.c')
-rw-r--r-- | newlib/libc/stdio/fdopen.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/newlib/libc/stdio/fdopen.c b/newlib/libc/stdio/fdopen.c index a335c3f..410a524 100644 --- a/newlib/libc/stdio/fdopen.c +++ b/newlib/libc/stdio/fdopen.c @@ -102,6 +102,11 @@ _DEFUN (_fdopen_r, (ptr, fd, mode), fp->_close = __sclose; #ifdef __SCLE + /* Explicit given mode results in explicit setting mode on fd */ + if (oflags & O_BINARY) + setmode(fp->_file, O_BINARY); + else if (oflags & O_TEXT) + setmode(fp->_file, O_TEXT); if (__stextmode(fp->_file)) fp->_flags |= __SCLE; #endif |