diff options
author | John MacFarlane <jgm@berkeley.edu> | 2015-07-12 14:58:08 -0700 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2015-07-12 14:58:08 -0700 |
commit | 9219938929274df6398dfe6b9356fd8bbb3d565b (patch) | |
tree | 3407d63aec175d0f14377056b24b157d5d2b0352 /src/commonmark.c | |
parent | ff2c9dc143b730a0fa5cfeddec0c355edba72e51 (diff) |
Removed options field from renderer struct.
Added options argument to render_node function, and rearrange
argument order.
Diffstat (limited to 'src/commonmark.c')
-rw-r--r-- | src/commonmark.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/commonmark.c b/src/commonmark.c index 09644a0..7dc2767 100644 --- a/src/commonmark.c +++ b/src/commonmark.c @@ -163,8 +163,10 @@ get_containing_block(cmark_node *node) } static int -S_render_node(cmark_node *node, cmark_event_type ev_type, - cmark_renderer *renderer) +S_render_node(cmark_renderer *renderer, + cmark_node *node, + cmark_event_type ev_type, + int options) { cmark_node *tmp; int list_number; @@ -337,14 +339,14 @@ S_render_node(cmark_node *node, cmark_event_type ev_type, break; case CMARK_NODE_LINEBREAK: - if (!(CMARK_OPT_HARDBREAKS & renderer->options)) { + if (!(CMARK_OPT_HARDBREAKS & options)) { LIT("\\"); } CR(); break; case CMARK_NODE_SOFTBREAK: - if (renderer->width == 0) { + if (CMARK_OPT_HARDBREAKS & options) { CR(); } else { OUT(" ", true, LITERAL); @@ -455,5 +457,10 @@ S_render_node(cmark_node *node, cmark_event_type ev_type, char *cmark_render_commonmark(cmark_node *root, int options, int width) { + if (options & CMARK_OPT_HARDBREAKS) { + // disable breaking on width, since it has + // a different meaning with OPT_HARDBREAKS + width = 0; + } return cmark_render(root, options, width, outc, S_render_node); } |