Make boolean string parsing consistent, #452464
2007-06-30 Johan Dahlin <jdahlin@async.com.br> * gtk/gtkbuilder.c: (gtk_builder_value_from_string_type): * gtk/gtkbuilderparser.c: (_gtk_builder_parse_boolean), (parse_property), (parse_signal): * gtk/gtkbuilderprivate.h: * tests/buildertest.c: (test_value_from_string): Make boolean string parsing consistent, #452464 svn path=/trunk/; revision=18305
This commit is contained in:
committed by
Johan Dahlin
parent
9a779e8e2d
commit
357e2cbfff
@ -1038,33 +1038,10 @@ gtk_builder_value_from_string_type (GtkBuilder *builder,
|
||||
{
|
||||
gboolean b;
|
||||
|
||||
switch (g_ascii_tolower (string[0]))
|
||||
{
|
||||
case 't':
|
||||
case 'y':
|
||||
b = TRUE;
|
||||
break;
|
||||
case 'f':
|
||||
case 'n':
|
||||
b = FALSE;
|
||||
break;
|
||||
default:
|
||||
{
|
||||
gchar *endptr;
|
||||
errno = 0;
|
||||
b = strtol (string, &endptr, 0);
|
||||
if (errno || endptr == string)
|
||||
{
|
||||
g_set_error (error,
|
||||
GTK_BUILDER_ERROR,
|
||||
GTK_BUILDER_ERROR_INVALID_VALUE,
|
||||
"Could not parse boolean `%s'",
|
||||
string);
|
||||
ret = FALSE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
if (!_gtk_builder_parse_boolean (string, &b, error))
|
||||
{
|
||||
ret = FALSE;
|
||||
break;
|
||||
}
|
||||
g_value_set_boolean (value, b);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user