diff --git a/ChangeLog b/ChangeLog index 3a94a1984..424bbdcaa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-11-08 Matthias Clasen + + * glib/gstrfuncs.c (g_parse_long_long): Don't leave + out parameters uninitialized. (#490061, Benjamin Otte) + 2007-11-07 Matthias Clasen === Branch for 2.14 === diff --git a/glib/gstrfuncs.c b/glib/gstrfuncs.c index c75daad6d..713df3e43 100644 --- a/glib/gstrfuncs.c +++ b/glib/gstrfuncs.c @@ -650,9 +650,12 @@ g_parse_long_long (const gchar *nptr, g_return_val_if_fail (nptr != NULL, 0); + *negative = FALSE; if (base == 1 || base > 36) { errno = EINVAL; + if (endptr) + *endptr = nptr; return 0; } @@ -666,7 +669,6 @@ g_parse_long_long (const gchar *nptr, goto noconv; /* Check for a sign. */ - *negative = FALSE; if (*s == '-') { *negative = TRUE;