Browse Source

fix incorrect return value for fwide function

when the orientation of the stream was already set, fwide was
incorrectly returning its argument (the requested orientation) rather
than the actual orientation of the stream.
Rich Felker 11 years ago
parent
commit
ebd8142a6a
1 changed files with 2 additions and 1 deletions
  1. 2 1
      src/stdio/fwide.c

+ 2 - 1
src/stdio/fwide.c

@@ -7,7 +7,8 @@
 int fwide(FILE *f, int mode)
 int fwide(FILE *f, int mode)
 {
 {
 	FLOCK(f);
 	FLOCK(f);
-	if (!f->mode) mode = f->mode = NORMALIZE(mode);
+	if (!f->mode) f->mode = NORMALIZE(mode);
+	mode = f->mode;
 	FUNLOCK(f);
 	FUNLOCK(f);
 	return mode;
 	return mode;
 }
 }