This is the mail archive of the
newlib@sources.redhat.com
mailing list for the newlib project.
The stdout always becomes line buffered mode.
- To: newlib at sources dot redhat dot com
- Subject: The stdout always becomes line buffered mode.
- From: Kazuhiro Fujieda <fujieda at jaist dot ac dot jp>
- Date: 27 Apr 2001 05:17:45 +0900
The latest newlib always sets the stdout to the line buffered
mode against the standard quoted below.
ISO/IEC 9899:1999, Second Edition 1999-12-01, p.266
As initially opened, the standard error stream is not fully buffered;
the standard input and standard output streams are fully buffered if
and only if the stream can be determined not to refer to an interective
device.
The following patch can correct it.
2001-04-27 Kazuhiro Fujieda <fujieda@jaist.ac.jp>
* libc/stdio/findfp.c (__sinit): Don't set stdout to line buffered
mode here, because it is properly set by __smakebuf in makebuf.c.
Index: findfp.c
===================================================================
RCS file: /cvs/src/src/newlib/libc/stdio/findfp.c,v
retrieving revision 1.3
diff -u -p -r1.3 findfp.c
--- findfp.c 2000/05/23 23:51:54 1.3
+++ findfp.c 2001/04/26 19:21:53
@@ -152,7 +152,7 @@ __sinit (s)
s->__sdidinit = 1;
std (s->__sf + 0, __SRD, 0, s);
- std (s->__sf + 1, __SWR | __SLBF, 1, s);
+ std (s->__sf + 1, __SWR, 1, s);
std (s->__sf + 2, __SWR | __SNBF, 2, s);
s->__sglue._next = NULL;
____
| AIST Kazuhiro Fujieda <fujieda@jaist.ac.jp>
| HOKURIKU School of Information Science
o_/ 1990 Japan Advanced Institute of Science and Technology