summaryrefslogtreecommitdiff
path: root/src/parse
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2009-02-14 12:08:39 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2009-02-14 12:08:39 +0000
commitf2ed699ce61ea40708ab97156fc747456b9585a7 (patch)
tree60e26209d1af9534d2c8d8dcf142024fc66c28c2 /src/parse
parent7c3e35e586771fcdd0ebfe59f67f7dbc68ef8226 (diff)
downloadlibcss-f2ed699ce61ea40708ab97156fc747456b9585a7.tar.gz
libcss-f2ed699ce61ea40708ab97156fc747456b9585a7.tar.bz2
I guess it helps if you actually flag that you've had a valid statement, so @import/@charset cease to take effect.
svn path=/trunk/libcss/; revision=6484
Diffstat (limited to 'src/parse')
-rw-r--r--src/parse/language.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/parse/language.c b/src/parse/language.c
index eab4162..8d20d62 100644
--- a/src/parse/language.c
+++ b/src/parse/language.c
@@ -311,6 +311,10 @@ css_error handleStartRuleset(css_language *c, const parserutils_vector *vector)
return error;
}
+ /* Flag that we've had a valid rule, so @import/@charset have
+ * no effect. */
+ c->state = HAD_RULE;
+
/* Rule is now owned by the sheet, so no need to destroy it */
return CSS_OK;
@@ -489,8 +493,10 @@ css_error handleStartAtRule(css_language *c, const parserutils_vector *vector)
* at-rule until then */
} else if (atkeyword->ilower == c->strings[MEDIA]) {
/** \todo any0 = IDENT ws (',' ws IDENT ws)* */
+ c->state = HAD_RULE;
} else if (atkeyword->ilower == c->strings[PAGE]) {
/** \todo any0 = (':' IDENT)? ws */
+ c->state = HAD_RULE;
#endif
} else {
return CSS_INVALID;