1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00
2000-07-27  Jakub Jelinek  <jakub@redhat.com>

	* locale/indigits.h (indigit_value): Correct.
	* locale/indigitswc.h (indigitwc_value): Correct.
	* stdio-common/vfscanf.c (__vfscanf): Fix I18N number
	conversion, add GROUP checking for it, fix GROUP number
	conversion with strlen(thousands) > 1.
	Honour width correctly in the presence of floating
	decimal points and thousands separators.
	* stdio-common/tst-sscanf.c: New test.
	* stdio-common/Makefile: Add it to tests.
	* sysdeps/generic/strtol.c (strtol): Fix conversion if there are
	thousands separators and group argument is non-zero.

	Reported by Andi Kleen <ak@suse.de>.
This commit is contained in:
Ulrich Drepper
2000-07-28 17:45:15 +00:00
parent dab46544a2
commit eac4282fa6
8 changed files with 413 additions and 118 deletions

View File

@ -48,6 +48,7 @@ indigitwc_value (wchar_t wc, int *decided)
{
/* Get the string for the digits with value N. */
wcdigits[n] = _NL_CURRENT (LC_CTYPE, _NL_CTYPE_INDIGITS0_WC + n);
wcdigits[n] += from_level;
if (wc == *wcdigits[n])
{
@ -78,9 +79,6 @@ indigitwc_value (wchar_t wc, int *decided)
/* Advance the pointer to the next string. */
++wcdigits[n];
}
/* Next level. */
++from_level;
}
/* If we reach this point no matching digit was found. */