summaryrefslogtreecommitdiff
path: root/libc/stdio/vfprintf.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2013-03-22 17:46:52 +0100
committerBernd Schmidt <bernds@codesourcery.com>2013-03-22 18:00:55 +0100
commit697427cc42ca3c6794dc26f3a379866de71bb91b (patch)
treefc160fbd7efa9de152f629309820a07c588118de /libc/stdio/vfprintf.c
parent7e434242bdaa3718c7146b31dcd81e24fe7dc3c1 (diff)
Fix a problem with scanning wide chars.
We found that the testcase int main (void) { wchar_t s[10]; memset (s, 0, sizeof (s)); int r = sscanf ("s", "%ls", s); printf ("%d\n", r); printf ("%ls\n", s); return 0; } printed 0 <blankline> rather than the expected 1 s The problem was the enum in _scanf.c, which has had a 'CONV_m' value inserted. The attached patch fixes the problem in __psfs_parse_spec by not presuming a particular displacement between the two sets of char-like conversion values. With this patch the above program produces the expected output. Signed-off-by: Nathan Sidwell <nathan@codesourcery.com> Signed-off-by: Bernd Schmidt <bernds@codesourcery.com>
Diffstat (limited to 'libc/stdio/vfprintf.c')
0 files changed, 0 insertions, 0 deletions