summaryrefslogtreecommitdiff
path: root/libc/stdio/scanf.c
AgeCommit message (Collapse)Author
2005-11-08Remove #define _STDIO_UTILITY, can't find any use of itPeter S. Mazinger
2004-02-11New stdio core. Should be more maintainable. Fixes a couple of bugs.Manuel Novoa III
Codepaths streamlined. Improved performance for nonthreaded apps when linked with a thread-enabled libc. Minor iconv bug and some locale/thread related startup issues fixed. These showed up in getting a gcj-compiled java helloworld app running. Removed some old extension functions... _stdio_fdout and _stdio_fsfopen.
2003-12-14Fix a couple of 'declaration after statement' errors.Manuel Novoa III
2003-09-22Ugh... EOF handling by scanf was completely broken. :-( Regretably,Manuel Novoa III
I got my mind fixed in one mode and didn't comply with the standards. Things should be fixed now, but comparision testing is difficult when glibc's scanf is broken and they stubbornly refuse to even acknowledge that it is... even when confronted by specific examples from the C99 standards and from an official C standard defect report.
2003-09-13Fix a problem reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>Manuel Novoa III
for environments where long and long long are the same size.
2003-09-06Implement vsnprintf (old_vfprintf only) and vsnscanf when uClibc isManuel Novoa III
configured with non-buffered stdio and non-wchar mode. Fix a couple of bugs that showed up in minimalist configurations. Update old_vfprintf to handle size qualifiers on the integer and %n conversions. It now passed the glibc printf tests with the exception of a floating point rounding difference.
2003-08-18scanf %lc,%ls,%l[ would always set mb_fail on eof or error,Manuel Novoa III
even when just starting a new mb char. wscanf would incorrectly unget in certain situations.
2003-08-01Add a new *scanf implementation, includeing the *wscanf functions.Manuel Novoa III
Should be standards compliant and with several optional features, including support for hexadecimal float notation, locale awareness, glibc-like locale-specific digit grouping with the `'' flag, and positional arg support. I tested it pretty well (finding several bugs in glibc's scanf in the process), but it is brand new so be aware. The *wprintf functions now support floating point output. Also, a couple of bugs were squashed. Finally, %a/%A conversions are now implemented. Implement the glibc xlocale interface for thread-specific locale support. Also add the various *_l(args, locale_t loc_arg) funcs. NOTE!!! setlocale() is NOT threadsafe! NOTE!!! The strto{floating point} conversion functions are now locale aware. The also now support hexadecimal floating point notation. Add the wcsto{floating point} conversion functions. Fix a bug in mktime() related to dst. Note that unlike glibc's mktime, uClibc's version always normalizes the struct tm before attempting to determine the correct dst setting if tm_isdst == -1 on entry. Add a stub version of the libintl functions. (untested) Fixed a known memory leak in setlocale() related to the collation data. Add lots of new config options (which Erik agreed to sort out :-), including finally exposing some of the stripped down stdio configs. Be careful with those though, as they haven't been tested in a long time. (temporary) GOTCHAs... The ctype functions are currently incorrect for 8-bit locales. They will be fixed shortly. The ctype functions are now table-based, resulting in larger staticly linked binaries. I'll be adding an option to use the old approach in the stub locale configuration.
2003-07-17Bug fix from Peter Kjellerstedt <peter.kjellerstedt@axis.com>. vfscanf wasManuel Novoa III
not setting the FILE bufread member to flag the end of the buffer. Also, do not set bufgetc member if getc macro support is disabled.
2003-05-23Sorry. Changed this while fixing the last bug and forgot to change itManuel Novoa III
back. Unfortunately, none of my test cases caught it.
2003-05-15Fix (hopefully) scanf behavior for nul bytes in the stream when processingManuel Novoa III
%c, %s, and %[ specifiers. Note that scanf is undergoing rewrite so I didn't bother optimizing this. I did run all my regression tests though. Set EOF correctly for fmemopen on readonly streams. I really need to check what glibc behavior is for the various open modes though.
2002-09-06Patch from Tero_Lyytik�inen <tero@paravant.fi> to fix bug in matchcharManuel Novoa III
case.
2002-08-25Kill the HAS_LONG_LONG option. It really did not make a lot ofEric Andersen
sense to exclude it, gcc always supports long long, and we never fully excluded long long anyways (off64_t for example). -Erik
2002-08-13__fsetlocking() and FILE field user_locking were completely broken. :-(Manuel Novoa III
I think they're fixed now (I've run a few tests). Note: __fsetlocking() is not threadsafe... but glibc's doesn't appear to be either.
2002-07-03Enable WCHAR support for C/POSIX stub locales.Manuel Novoa III
Implemented unformatted wide i/o functions. (ungetwc still needs testing) Fix a few bugs in wchar.c. Modifications for bcc/elks support.
2002-05-11Adjust preprocessor logic to initialize QUAL_CHARS correctly for Erik's alphaManuel Novoa III
port. Also, explicitly use the macro versions of isdigit and isspace in the printf and scanf code.
2002-05-10Protect against ctype macros.Manuel Novoa III
2002-04-01Forget to initialize thread locks for fake files. Thanks Erik.Manuel Novoa III
2002-03-13Modified because of the new str to int funcs.Manuel Novoa III
2002-03-12Swap in the new stdio code.Manuel Novoa III
2001-09-27Update to accomodate the header file changesEric Andersen
2001-08-09Add in changes from philipc@lineo:David McCullough
Fix three bugs and bring into line with glibc: 1. The first character read using getc() was being ignored if it was EOF. Normally this is okay because the next getc() returns EOF as well, but for sscanf, this was causing us to skip the null terminator and start scanning whatever happened to be next in memory. 2. %s, %c, and %[ formats now return -1 if EOF is reached before any characters are read, instead of 0. This was causing an infinite loop in diald. 3. Default to base 10 for %i fields if not prefix modifier present.
2001-05-21Add comment about scanf pushback behavior and glibc difference.Manuel Novoa III
2001-03-23Bug fix from Peter Kjellerstedt <Peter.Kjellerstedt@axis.com>.Manuel Novoa III
2001-03-19Since Erik apparently wants def/undef vs def 1/0...Manuel Novoa III
2001-03-18Test for Config features using features.h.Manuel Novoa III
2001-03-15Fix bug with %c... takes care of bug reported with busybox ps.Manuel Novoa III
2001-03-13New version of scanf, with floating point support.Manuel Novoa III
2001-03-12Hack long long support into scanf. For now, will fail for unsigned long longsManuel Novoa III
that are greater that long long max, but works well enough to support interface in busybox. Just a temporary measure until scanf.c is rewritten.
2001-02-27stdio mostly rewritten... passes lots of tests now.Manuel Novoa III
printf now supports long double, plus some bug fixes.
2000-11-17Some cleanups from Manuel Novoa III <mnovoa3@bellsouth.net>,Eric Andersen
and a bit of extra cleanup in the test makefiles.
2000-11-15Add in tmpnam() support from David Whedon <dwhedon@gordian.com>,Eric Andersen
rework include/stdio.h, and fix up the resultant damage.
2000-10-09Bug ugly formatting updateEric Andersen
2000-07-06Lots and lots of cleanups.Eric Andersen
-Erik
2000-05-14Initial revisionErik Andersen