diff options
-rw-r--r-- | css/parser.y | 4 | ||||
-rw-r--r-- | css/ruleset.c | 4 | ||||
-rw-r--r-- | css/scanner.l | 1 |
3 files changed, 5 insertions, 4 deletions
diff --git a/css/parser.y b/css/parser.y index 29767b546..b373ad585 100644 --- a/css/parser.y +++ b/css/parser.y @@ -92,6 +92,8 @@ simple_selector(A) ::= detail_list(C). element_name(A) ::= IDENT(B). { A = B; } +element_name(A) ::= ASTERISK. + { A = 0; } detail_list(A) ::= detail(B). { A = B; } @@ -209,6 +211,8 @@ any(A) ::= LPAREN any_list(B) RPAREN. { A = css_new_node(CSS_NODE_PAREN, 0, B, 0); } any(A) ::= LBRAC any_list(B) RBRAC. { A = css_new_node(CSS_NODE_BRAC, 0, B, 0); } +any(A) ::= ASTERISK(B). + { A = css_new_node(CSS_NODE_DELIM, B, 0, 0); } /* lemon directives */ diff --git a/css/ruleset.c b/css/ruleset.c index f38b4572d..7ae15bd02 100644 --- a/css/ruleset.c +++ b/css/ruleset.c @@ -228,10 +228,6 @@ void css_add_ruleset(struct content *c, } fprintf(stderr, "\n");*/ - /* skip empty selectors */ - if (sel->left == 0 && sel->data == 0) - continue; - /* check if this selector is already present */ found = false; prev = 0; diff --git a/css/scanner.l b/css/scanner.l index 168ca012a..1f8cc1d92 100644 --- a/css/scanner.l +++ b/css/scanner.l @@ -72,6 +72,7 @@ U\+[0-9A-F?]{1,6}(-[0-9A-F]{1,6})? { "+" { return PLUS; } > { return GT; } "." { return DOT; } +"*" { return ASTERISK; } . { return DELIM; } %% |