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, 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);
}