ext/xhtml.c in redcarpet-1.6.0 vs ext/xhtml.c in redcarpet-1.7.0

- old
+ new

@@ -19,10 +19,11 @@ #include "xhtml.h" #include <strings.h> #include <stdlib.h> #include <stdio.h> +#include <ctype.h> struct xhtml_renderopt { struct { int header_count; int current_level; @@ -137,19 +138,14 @@ } static int rndr_double_emphasis(struct buf *ob, struct buf *text, char c, void *opaque) { - struct xhtml_renderopt *options = opaque; - if (!text || !text->size) return 0; if (c == '~') { - if ((options->flags & XHTML_STRIKETHROUGH) == 0) - return 0; - BUFPUTSL(ob, "<span style=\"text-decoration:line-through;\">"); bufput(ob, text->data, text->size); BUFPUTSL(ob, "</span>"); } else { BUFPUTSL(ob, "<strong>"); @@ -410,11 +406,11 @@ { '&', "&#0;", 0, 3 }, }; #define SUBS_COUNT (sizeof(smartypants_subs) / sizeof(smartypants_subs[0])) -static inline +static inline int word_boundary(char c) { return isspace(c) || ispunct(c); } @@ -626,11 +622,11 @@ if (options->toc_data.current_level) BUFPUTSL(ob, "</ul>\n"); } void -init_toc_renderer(struct mkd_renderer *renderer) +ups_toc_renderer(struct mkd_renderer *renderer) { static const struct mkd_renderer toc_render = { NULL, NULL, NULL, @@ -657,11 +653,10 @@ NULL, NULL, toc_finalize, - "*-~", NULL }; struct xhtml_renderopt *options; options = calloc(1, sizeof(struct xhtml_renderopt)); @@ -670,11 +665,11 @@ memcpy(renderer, &toc_render, sizeof(struct mkd_renderer)); renderer->opaque = options; } void -init_xhtml_renderer(struct mkd_renderer *renderer, unsigned int render_flags) +ups_xhtml_renderer(struct mkd_renderer *renderer, unsigned int render_flags) { static const struct mkd_renderer renderer_default = { rndr_blockcode, rndr_blockquote, rndr_raw_block, @@ -701,11 +696,10 @@ rndr_normal_text, NULL, NULL, - "*_~", NULL }; struct xhtml_renderopt *options; options = calloc(1, sizeof(struct xhtml_renderopt)); @@ -725,10 +719,10 @@ if (render_flags & XHTML_SMARTYPANTS) renderer->normal_text = rndr_smartypants; } void -free_renderer(struct mkd_renderer *renderer) +ups_free_renderer(struct mkd_renderer *renderer) { free(renderer->opaque); }