summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2009-07-30 14:43:28 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2009-07-30 14:43:28 +0000
commit59c5c55d679246f3624a5430d0c4e4560c220cd2 (patch)
tree696d0134251ed7c4306887315909e90b9f3bfe3d /src
parent173e9c15667d8eaaf3b777bd929172d782efef24 (diff)
downloadlibcss-59c5c55d679246f3624a5430d0c4e4560c220cd2.tar.gz
libcss-59c5c55d679246f3624a5430d0c4e4560c220cd2.tar.bz2
Fix processing of quotes bytecode during cascade.
svn path=/trunk/libcss/; revision=8912
Diffstat (limited to 'src')
-rw-r--r--src/select/properties.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/select/properties.c b/src/select/properties.c
index 8959ad8..4b7b8a7 100644
--- a/src/select/properties.c
+++ b/src/select/properties.c
@@ -4049,14 +4049,17 @@ css_error cascade_quotes(uint32_t opv, css_style *style,
value = CSS_QUOTES_STRING;
while (v != QUOTES_NONE) {
- lwc_string *quote;
+ lwc_string *open, *close;
lwc_string **temp;
- quote = *((lwc_string **) style->bytecode);
- advance_bytecode(style, sizeof(quote));
+ open = *((lwc_string **) style->bytecode);
+ advance_bytecode(style, sizeof(lwc_string *));
+
+ close = *((lwc_string **) style->bytecode);
+ advance_bytecode(style, sizeof(lwc_string *));
temp = state->result->alloc(quotes,
- (n_quotes + 1) * sizeof(lwc_string *),
+ (n_quotes + 2) * sizeof(lwc_string *),
state->result->pw);
if (temp == NULL) {
if (quotes != NULL) {
@@ -4068,9 +4071,8 @@ css_error cascade_quotes(uint32_t opv, css_style *style,
quotes = temp;
- quotes[n_quotes] = quote;
-
- n_quotes++;
+ quotes[n_quotes++] = open;
+ quotes[n_quotes++] = close;
v = *((uint32_t *) style->bytecode);
advance_bytecode(style, sizeof(v));