From 82c19d335abd0ee957ad5c3167755a545521504a Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Wed, 19 Jun 2013 15:58:50 +0000 Subject: * acconfig.h (_UNBUF_STREAM_OPT): Undefine. * newlib.hin (_UNBUF_STREAM_OPT): Undefine. * configure.in (--enable-newlib-unbuf-stream-opt): New option. * configure: Regenerate. * libc/stdio/vfprintf.c (_VFPRINTF_R): Don't do optimization on unbuffered stream files. * libc/stdio/vfwprintf.c (_VFWPRINTF_R): Likewise. * README: Add description about the option. * newlib.hin (_UNBUF_STREAM_OPT): Undefine. * configure.in (--enable-newlib-unbuf-stream-opt): New option. * configure: Regenerate. * libc/stdio/vfprintf.c (_VFPRINTF_R): Don't do optimization on unbuffered stream files. * libc/stdio/vfwprintf.c (_VFWPRINTF_R): Likewise. * README: Add description about the option. --- newlib/libc/stdio/vfwprintf.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'newlib/libc/stdio/vfwprintf.c') diff --git a/newlib/libc/stdio/vfwprintf.c b/newlib/libc/stdio/vfwprintf.c index 5860147ec..4788add23 100644 --- a/newlib/libc/stdio/vfwprintf.c +++ b/newlib/libc/stdio/vfwprintf.c @@ -166,6 +166,7 @@ int _EXFUN(__SPRINT, (struct _reent *, FILE *, register struct __suio *)); int _EXFUN(__SPRINT, (struct _reent *, FILE *, _CONST char *, size_t)); #endif #ifndef STRING_ONLY +#ifdef _UNBUF_STREAM_OPT /* * Helper function for `fprintf to unbuffered unix file': creates a * temporary buffer. We only work on write-only files; this avoids @@ -209,6 +210,7 @@ _DEFUN(__sbwprintf, (rptr, fp, fmt, ap), #endif return (ret); } +#endif /* _UNBUF_STREAM_OPT */ #endif /* !STRING_ONLY */ @@ -599,12 +601,14 @@ _DEFUN(_VFWPRINTF_R, (data, fp, fmt0, ap), return (EOF); } +#ifdef _UNBUF_STREAM_OPT /* optimise fwprintf(stderr) (and other unbuffered Unix files) */ if ((fp->_flags & (__SNBF|__SWR|__SRW)) == (__SNBF|__SWR) && fp->_file >= 0) { _newlib_flockfile_exit (fp); return (__sbwprintf (data, fp, fmt0, ap)); } +#endif #else /* STRING_ONLY */ /* Create initial buffer if we are called by asprintf family. */ if (fp->_flags & __SMBF && !fp->_bf._base) -- cgit v1.2.3