diff --git a/gtk/gtkcsspositionvalue.c b/gtk/gtkcsspositionvalue.c index 61c34f3162..fd230ed917 100644 --- a/gtk/gtkcsspositionvalue.c +++ b/gtk/gtkcsspositionvalue.c @@ -187,12 +187,18 @@ _gtk_css_position_value_parse (GtkCssParser *parser) } if (names[first].name == NULL) { - missing = &y; - x = _gtk_css_number_value_parse (parser, - GTK_CSS_PARSE_PERCENT - | GTK_CSS_PARSE_LENGTH); - if (x == NULL) - return NULL; + if (_gtk_css_parser_has_number (parser)) + { + missing = &y; + x = _gtk_css_number_value_parse (parser, + GTK_CSS_PARSE_PERCENT + | GTK_CSS_PARSE_LENGTH); + + if (x == NULL) + return NULL; + } + else + return NULL; } for (second = 0; names[second].name != NULL; second++)