summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdio/ungetwc.c
Commit message (Collapse)AuthorAgeFilesLines
* Call __mbrtowc() and __wcrtomb() directly instead of taking detourstjr2004-07-201-1/+2
| | | | through mbrtowc() and wcrtomb().
* Associate a multibyte conversion state object with each stream. Reset ittjr2004-05-221-5/+2
| | | | | | | | | to the initial state when a stream is opened or seeked upon. Use the stream's conversion state object instead of a freshly-zeroed one in fgetwc(), fputwc() and ungetwc(). This is only a performance improvement for now, but it would also be required in order to support state-dependent encodings.
* Prepare to handle trivial state-dependent encodings. Full support fortjr2004-04-071-1/+4
| | | | | state-dependent encodings with locking shifts will come later if there is demand for it.
* Pass mbrtowc() and wcrtomb() NULL instead of a pointer to a freshly zeroedtjr2003-11-041-3/+1
| | | | | | | mbstate_t object that they ignore. The zeroing is fairly expensive, and it will never be necessary in these functions; when we support state-dependent encodings, we will pass in a pointer to the file's mbstate_t object, and only zero it at the time the file gets opened.
* Set the error bit on the stream if an encoding error occurs. Improvetjr2002-10-161-1/+3
| | | | handling of multibyte sequences representing null wide characters.
* Add an unlocked version of ungetwc(), __ungetwc(), that __vfwscanf()tjr2002-09-221-9/+21
| | | | will need to use.
* Lock and unlock the file once per call and use the unlocked version oftjr2002-09-201-7/+11
| | | | ungetc() instead of having ungetc() recurse on the lock.
* Reimplement the functionality of fgetrune(), fputrune(), and fungetrune()tjr2002-09-181-2/+15
| | | | | | here in terms of mbrtowc(), wcrtomb(), and the single-byte I/O functions. The rune I/O functions are about to become deprecated in favour of the ones provided by ISO C90 Amd. 1 and C99.
* Basic support for wide character I/O: getwc(), fgetwc(), getwchar(),tjr2002-08-131-0/+46
putwc(), fputwc(), putwchar(), ungetwc(), fwide().
OpenPOWER on IntegriCloud