mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-26 14:06:15 +01:00
Make g_ascii_strtod behave as documented
The docs explicitly state that we reset errno, so lets do that, even if we just wrap strtod_l. Also move the argument check out of the ifdef. https://bugzilla.gnome.org/show_bug.cgi?id=662398
This commit is contained in:
parent
848df03e16
commit
e52437982c
@ -673,12 +673,16 @@ g_strtod (const gchar *nptr,
|
||||
* you can reliably detect overflow and underflow.
|
||||
*
|
||||
* Return value: the #gdouble value.
|
||||
**/
|
||||
*/
|
||||
gdouble
|
||||
g_ascii_strtod (const gchar *nptr,
|
||||
gchar **endptr)
|
||||
{
|
||||
g_return_val_if_fail (nptr != NULL, 0);
|
||||
|
||||
#ifdef HAVE_STRTOD_L
|
||||
errno = 0;
|
||||
|
||||
return strtod_l (nptr, endptr, get_C_locale ());
|
||||
#else
|
||||
gchar *fail_pos;
|
||||
@ -690,8 +694,6 @@ g_ascii_strtod (const gchar *nptr,
|
||||
const char *end = NULL; /* Silence gcc */
|
||||
int strtod_errno;
|
||||
|
||||
g_return_val_if_fail (nptr != NULL, 0);
|
||||
|
||||
fail_pos = NULL;
|
||||
|
||||
locale_data = localeconv ();
|
||||
|
Loading…
Reference in New Issue
Block a user