Index: Source/core/css/CSSGrammar.y |
diff --git a/Source/core/css/CSSGrammar.y b/Source/core/css/CSSGrammar.y |
index 97d1672e06a11feead3e4e79a15d887a78189d15..e006812e9a4f87ae08cf5467ea0c2b7d34ce4da3 100644 |
--- a/Source/core/css/CSSGrammar.y |
+++ b/Source/core/css/CSSGrammar.y |
@@ -132,6 +132,7 @@ inline static CSSParserValue makeOperatorValue(int value) |
{ |
CSSParserValue v; |
v.id = CSSValueInvalid; |
+ v.isInt = false; |
v.unit = CSSParserValue::Operator; |
v.iValue = value; |
return v; |
@@ -141,6 +142,7 @@ inline static CSSParserValue makeIdentValue(CSSParserString string) |
{ |
CSSParserValue v; |
v.id = cssValueKeywordID(string); |
+ v.isInt = false; |
v.unit = CSSPrimitiveValue::CSS_IDENT; |
v.string = string; |
return v; |
@@ -1592,20 +1594,20 @@ operator: |
term: |
unary_term maybe_space |
| unary_operator unary_term maybe_space { $$ = $2; $$.fValue *= $1; } |
- | STRING maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.unit = CSSPrimitiveValue::CSS_STRING; } |
+ | STRING maybe_space { $$.id = CSSValueInvalid; $$.isInt = false; $$.string = $1; $$.unit = CSSPrimitiveValue::CSS_STRING; } |
| IDENT maybe_space { $$ = makeIdentValue($1); } |
/* We might need to actually parse the number from a dimension, but we can't just put something that uses $$.string into unary_term. */ |
- | DIMEN maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.unit = CSSPrimitiveValue::CSS_DIMENSION; } |
- | unary_operator DIMEN maybe_space { $$.id = CSSValueInvalid; $$.string = $2; $$.unit = CSSPrimitiveValue::CSS_DIMENSION; } |
- | URI maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.unit = CSSPrimitiveValue::CSS_URI; } |
- | UNICODERANGE maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.unit = CSSPrimitiveValue::CSS_UNICODE_RANGE; } |
- | HEX maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.unit = CSSPrimitiveValue::CSS_PARSER_HEXCOLOR; } |
- | '#' maybe_space { $$.id = CSSValueInvalid; $$.string = CSSParserString(); $$.unit = CSSPrimitiveValue::CSS_PARSER_HEXCOLOR; } /* Handle error case: "color: #;" */ |
+ | DIMEN maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.isInt = false; $$.unit = CSSPrimitiveValue::CSS_DIMENSION; } |
+ | unary_operator DIMEN maybe_space { $$.id = CSSValueInvalid; $$.string = $2; $$.isInt = false; $$.unit = CSSPrimitiveValue::CSS_DIMENSION; } |
+ | URI maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.isInt = false; $$.unit = CSSPrimitiveValue::CSS_URI; } |
+ | UNICODERANGE maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.isInt = false; $$.unit = CSSPrimitiveValue::CSS_UNICODE_RANGE; } |
+ | HEX maybe_space { $$.id = CSSValueInvalid; $$.string = $1; $$.isInt = false; $$.unit = CSSPrimitiveValue::CSS_PARSER_HEXCOLOR; } |
+ | '#' maybe_space { $$.id = CSSValueInvalid; $$.string = CSSParserString(); $$.isInt = false; $$.unit = CSSPrimitiveValue::CSS_PARSER_HEXCOLOR; } /* Handle error case: "color: #;" */ |
/* FIXME: according to the specs a function can have a unary_operator in front. I know no case where this makes sense */ |
| function maybe_space |
| calc_function maybe_space |
| '%' maybe_space { /* Handle width: %; */ |
- $$.id = CSSValueInvalid; $$.unit = 0; |
+ $$.id = CSSValueInvalid; $$.isInt = false; $$.unit = 0; |
} |
| track_names_list maybe_space |
; |