summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdio/fputws.c
Commit message (Collapse)AuthorAgeFilesLines
* As noted by Peter Jeremy, r234528 only partially fixed the infinitedas2012-04-211-1/+1
| | | | | | | loop bug introduced in r187302. This completes the fix. PR: 167039 MFC after: 3 days
* Fix a bug introduced in r187302 that was causing fputws() to enter andas2012-04-211-1/+1
| | | | | | | | | infinite loop pretty much unconditionally. It's remarkable that the patch that introduced the bug was never tested, but even more remarkable that nobody noticed for over two years. PR: 167039 MFC after: 3 days
* Implement xlocale APIs from Darwin, mainly for use by libc++. This adds atheraven2011-11-201-2/+15
| | | | | | | | | | | | load of _l suffixed versions of various standard library functions that use the global locale, making them take an explicit locale parameter. Also adds support for per-thread locales. This work was funded by the FreeBSD Foundation. Please test any code you have that uses the C standard locale functions! Reviewed by: das (gdtoa changes) Approved by: dim (mentor)
* Introduce a local variable and use it instead of passed in parameterrdivacky2009-01-151-1/+3
| | | | | | | | to get rid of restrict qualifier discarding. This lets libc compile cleanly in gnu99 mode. Suggested by: kib, christoph.mallon at gmx.de Approved by: kib (mentor)
* Next stage of stdio cleanup: Retire __sFILEX and merge the fields back intojhb2008-04-171-1/+1
| | | | | | | | | | | | | | | | | | | __sFILE. This was supposed to be done in 6.0. Some notes: - Where possible I restored the various lines to their pre-__sFILEX state. - Retire INITEXTRA() and just initialize the wchar bits (orientation and mbstate) explicitly instead. The various places that used INITEXTRA didn't need the locking fields or _up initialized. (Some places needed _up to exist and not be off the end of a NULL or garbage pointer, but they didn't require it to be initialized to a specific value.) - For now, stdio.h "knows" that pthread_t is a 'struct pthread *' to avoid namespace pollution of including all the pthread types in stdio.h. Once we remove all the inlines and make __sFILE private it can go back to using pthread_t, etc. - This does not remove any of the inlines currently and does not change any of the public ABI of 'FILE'. MFC after: 1 month Reviewed by: peter
* Implement the GNU extensions of mbsnrtowcs() and wcsnrtombs(). These aretjr2004-07-211-1/+2
| | | | | | | convenient when the source string isn't null-terminated. Implement the other conversion functions (mbstowcs(), mbsrtowcs(), wcstombs(), wcsrtombs()) in terms of these new functions.
* Use __wcsrtombs() and __sfvwrite() to convert and write the wide charactertjr2004-07-211-8/+25
| | | | string instead of multiple calls to __fputwc().
* Lock the file once per call and use the unlocked fgetwc()/fputwc() variants.tjr2002-09-201-3/+6
|
* Reimplement the functionality of fgetrune(), fputrune(), and fungetrune()tjr2002-09-181-2/+1
| | | | | | 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.
* Style: One space between "restrict" qualifier and "*".tjr2002-09-061-1/+1
|
* Basic support for wide character I/O: getwc(), fgetwc(), getwchar(),tjr2002-08-131-0/+51
putwc(), fputwc(), putwchar(), ungetwc(), fwide().
OpenPOWER on IntegriCloud