diff options
Diffstat (limited to 'src/parse/properties/column_rule.c')
-rw-r--r-- | src/parse/properties/column_rule.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/parse/properties/column_rule.c b/src/parse/properties/column_rule.c index ba57565..7bfcad5 100644 --- a/src/parse/properties/column_rule.c +++ b/src/parse/properties/column_rule.c @@ -28,10 +28,10 @@ * If the input is invalid, then \a *ctx remains unchanged. */ css_error css__parse_column_rule(css_language *c, - const parserutils_vector *vector, int *ctx, + const parserutils_vector *vector, int32_t *ctx, css_style *result) { - int orig_ctx = *ctx; + int32_t orig_ctx = *ctx; int prev_ctx; const css_token *token; css_error error; @@ -41,26 +41,28 @@ css_error css__parse_column_rule(css_language *c, css_style *color_style; css_style *style_style; css_style *width_style; + enum flag_value flag_value; /* Firstly, handle inherit */ token = parserutils_vector_peek(vector, *ctx); if (token == NULL) return CSS_INVALID; - if (is_css_inherit(c, token)) { - error = css_stylesheet_style_inherit(result, + flag_value = get_css_flag_value(c, token); + + if (flag_value != FLAG_VALUE__NONE) { + error = css_stylesheet_style_flag_value(result, flag_value, CSS_PROP_COLUMN_RULE_COLOR); if (error != CSS_OK) return error; - error = css_stylesheet_style_inherit(result, + error = css_stylesheet_style_flag_value(result, flag_value, CSS_PROP_COLUMN_RULE_STYLE); if (error != CSS_OK) return error; - error = css_stylesheet_style_inherit(result, + error = css_stylesheet_style_flag_value(result, flag_value, CSS_PROP_COLUMN_RULE_WIDTH); - if (error == CSS_OK) parserutils_vector_iterate(vector, ctx); |