diff options
author | Michael Drake <tlsa@netsurf-browser.org> | 2022-08-13 16:23:56 +0100 |
---|---|---|
committer | Michael Drake <mdrake.unique@gmail.com> | 2022-08-29 13:49:20 +0100 |
commit | 2504bb6f6414ae36c036a84d21f7821178dc58ee (patch) | |
tree | 8c6573ae9fe6ebd8af7ff8eead85c387557a5c3b /src/parse/properties/margin.c | |
parent | 0997e85ec5f14bd0d6959b9201fcd3845b224747 (diff) | |
download | libcss-2504bb6f6414ae36c036a84d21f7821178dc58ee.tar.gz libcss-2504bb6f6414ae36c036a84d21f7821178dc58ee.tar.bz2 |
Parse: Nongenerated properties: Explicit defaults
Diffstat (limited to 'src/parse/properties/margin.c')
-rw-r--r-- | src/parse/properties/margin.c | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/src/parse/properties/margin.c b/src/parse/properties/margin.c index 7817d50..63adddc 100644 --- a/src/parse/properties/margin.c +++ b/src/parse/properties/margin.c @@ -40,26 +40,33 @@ css_error css__parse_margin(css_language *c, uint32_t side_count = 0; bool match; css_error error; + 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, CSS_PROP_MARGIN_TOP); + 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_MARGIN_TOP); if (error != CSS_OK) return error; - error = css_stylesheet_style_inherit(result, CSS_PROP_MARGIN_RIGHT); + error = css_stylesheet_style_flag_value(result, flag_value, + CSS_PROP_MARGIN_RIGHT); if (error != CSS_OK) return error; - error = css_stylesheet_style_inherit(result, CSS_PROP_MARGIN_BOTTOM); + error = css_stylesheet_style_flag_value(result, flag_value, + CSS_PROP_MARGIN_BOTTOM); if (error != CSS_OK) return error; - error = css_stylesheet_style_inherit(result, CSS_PROP_MARGIN_LEFT); + error = css_stylesheet_style_flag_value(result, flag_value, + CSS_PROP_MARGIN_LEFT); if (error == CSS_OK) parserutils_vector_iterate(vector, ctx); @@ -70,7 +77,9 @@ css_error css__parse_margin(css_language *c, do { prev_ctx = *ctx; - if ((token != NULL) && is_css_inherit(c, token)) { + flag_value = get_css_flag_value(c, token); + + if ((token != NULL) && flag_value != FLAG_VALUE__NONE) { *ctx = orig_ctx; return CSS_INVALID; } |