diff options
| author | Jakob Kaivo <jkk@ung.org> | 2024-05-28 12:34:30 -0400 |
|---|---|---|
| committer | Jakob Kaivo <jkk@ung.org> | 2024-05-28 12:34:30 -0400 |
| commit | db616c2d5cff8477336b318d889e02112fe97f9a (patch) | |
| tree | 4827495015891d4492ac50e05c6fe2d430b194b0 /src/wchar/fwide.c | |
| parent | e6ef806ef40a421435b1209f0f79d778c03fe04a (diff) | |
handle stream orientation behavior
Diffstat (limited to 'src/wchar/fwide.c')
| -rw-r--r-- | src/wchar/fwide.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/wchar/fwide.c b/src/wchar/fwide.c index 9623d956..4dc965be 100644 --- a/src/wchar/fwide.c +++ b/src/wchar/fwide.c @@ -1,5 +1,3 @@ -#if 0 - #include <wchar.h> #include <stdio.h> #include "stdio/_stdio.h" @@ -9,10 +7,14 @@ int fwide(FILE * stream, int mode) { SIGNAL_SAFE(0); - ASSERT_NONNULL(stream); + ASSERT_STREAM(stream, 0, 0); - if (stream->orientation == 0) { - stream->orientation = mode; + if (mode != 0) { + if (mode < 0) { + stream->orientation = ORIENT_BYTE; + } else if (mode > 0) { + stream->orientation = ORIENT_WIDE; + } } return stream->orientation; } @@ -20,6 +22,3 @@ int fwide(FILE * stream, int mode) /* STDC(199409) */ - - -#endif |
