summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Mendez <jmendeth@gmail.com>2014-06-22 14:13:53 +0200
committerXavier Mendez <jmendeth@gmail.com>2014-07-31 14:30:14 +0200
commit82744d9c732daebdd28f13ccbc7e1edd243d0a67 (patch)
tree395248cb38293629e480fdd39f2fd1210199ca2b
parent0610117f44b173a4e2112afb2f510156a32355b5 (diff)
downloadrust-hoedown-82744d9c732daebdd28f13ccbc7e1edd243d0a67.tar.gz
Let char_quote() parse what is inside (fixes #79)
-rw-r--r--src/document.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/document.c b/src/document.c
index c68aa20..8a79ada 100644
--- a/src/document.c
+++ b/src/document.c
@@ -798,9 +798,12 @@ char_quote(hoedown_buffer *ob, hoedown_document *doc, uint8_t *data, size_t offs
/* real quote */
if (f_begin < f_end) {
- hoedown_buffer work = { data + f_begin, f_end - f_begin, 0, 0, NULL, NULL, NULL };
- if (!doc->md.quote(ob, &work, doc->md.opaque))
+ hoedown_buffer *work = newbuf(doc, BUFFER_SPAN);
+ parse_inline(work, doc, data + f_begin, f_end - f_begin);
+
+ if (!doc->md.quote(ob, work, doc->md.opaque))
end = 0;
+ popbuf(doc, BUFFER_SPAN);
} else {
if (!doc->md.quote(ob, 0, doc->md.opaque))
end = 0;