diff options
author | Ulrich Drepper <drepper@redhat.com> | 2001-08-04 08:05:56 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2001-08-04 08:05:56 +0000 |
commit | 6906cea4cc14c72110dc35c625491d482d4caef1 (patch) | |
tree | 858973a2557a4ab9a3761e13ec401fa9bec9dfbf /libio | |
parent | 03003424c30119b74deb19557d809a3142e5a70d (diff) | |
download | glibc-6906cea4cc14c72110dc35c625491d482d4caef1.tar.gz glibc-6906cea4cc14c72110dc35c625491d482d4caef1.tar.xz glibc-6906cea4cc14c72110dc35c625491d482d4caef1.zip |
Update.
2001-08-04 Ulrich Drepper <drepper@redhat.com> * libio/genops.c (_IO_unbuffer_write): Force streams in narrow orientation so that conversion modules aren't used anymore. * malloc/set-freeres.c: Call _IO_cleanup before running subfreeres functions to avoid using wide streams afterwards. * iconvdata/Makefile: Add rules to build GEORGIAN-PS and GEORGIAN-ACADEMY. * iconvdata/georgian-ps.c: New file. * iconvdata/georgian-academy.c: New file. * iconvdata/gconv-modules: Add entries for GEORGIAN-PS and GEORGIAN-ACADEMY. * iconvdata/tst-tables.sh: Add GEORGIAN-PS and GEORGIAN-ACADEMY.
Diffstat (limited to 'libio')
-rw-r--r-- | libio/genops.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/libio/genops.c b/libio/genops.c index ad6c7f7ea4..f68912ceb4 100644 --- a/libio/genops.c +++ b/libio/genops.c @@ -881,12 +881,18 @@ _IO_unbuffer_write () { struct _IO_FILE *fp; for (fp = (_IO_FILE *) _IO_list_all; fp; fp = fp->_chain) - if (! (fp->_flags & _IO_UNBUFFERED) - && (! (fp->_flags & _IO_NO_WRITES) - || (fp->_flags & _IO_IS_APPENDING)) - /* Iff stream is un-orientated, it wasn't used. */ - && fp->_mode != 0) - _IO_SETBUF (fp, NULL, 0); + { + if (! (fp->_flags & _IO_UNBUFFERED) + && (! (fp->_flags & _IO_NO_WRITES) + || (fp->_flags & _IO_IS_APPENDING)) + /* Iff stream is un-orientated, it wasn't used. */ + && fp->_mode != 0) + _IO_SETBUF (fp, NULL, 0); + + /* Make sure that never again the wide char functions can be + used. */ + fp->_mode = -1; + } } int |