summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/data/parse2/tests1.dat9
-rw-r--r--test/dump.h12
2 files changed, 16 insertions, 5 deletions
diff --git a/test/data/parse2/tests1.dat b/test/data/parse2/tests1.dat
index 402c37e..9f96edd 100644
--- a/test/data/parse2/tests1.dat
+++ b/test/data/parse2/tests1.dat
@@ -38,3 +38,12 @@
| display: block
| display: table-cell
#reset
+
+#data
+* { cursor: url("foo.png"), url("bar.gif"), pointer; }
+#errors
+#expected
+| *
+| cursor: url('foo.png'), url('bar.gif'), pointer
+#reset
+
diff --git a/test/dump.h b/test/dump.h
index b38b0b8..c217565 100644
--- a/test/dump.h
+++ b/test/dump.h
@@ -1132,18 +1132,20 @@ void dump_bytecode(css_style *style, char **ptr)
}
break;
case OP_CURSOR:
- switch (value) {
- case CURSOR_URI:
- {
+ while (value == CURSOR_URI) {
parserutils_hash_entry *he =
*((parserutils_hash_entry **)
bytecode);
ADVANCE(sizeof(ptr));
- *ptr += sprintf(*ptr, "url('%.*s')",
+ *ptr += sprintf(*ptr, "url('%.*s'), ",
(int) he->len,
(char *) he->data);
+
+ value = *((uint32_t *) bytecode);
+ ADVANCE(sizeof(value));
}
- break;
+
+ switch (value) {
case CURSOR_AUTO:
*ptr += sprintf(*ptr, "auto");
break;