Skip to content

Commit 5d99168

Browse files
don't reset the special-char blocks in parser_reset
since cmark_parser_reset is called in cmark_parser_finish, this state would be inconsistent if you reused a parser with extensions multiple times.
1 parent fe9ba10 commit 5d99168

File tree

1 file changed

+2
-3
lines changed

1 file changed

+2
-3
lines changed

src/blocks.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,16 +142,15 @@ static void cmark_parser_reset(cmark_parser *parser) {
142142
parser->syntax_extensions = saved_exts;
143143
parser->inline_syntax_extensions = saved_inline_exts;
144144
parser->options = saved_options;
145-
146-
cmark_set_default_skip_chars(&parser->skip_chars, false);
147-
cmark_set_default_special_chars(&parser->special_chars, false);
148145
}
149146

150147
cmark_parser *cmark_parser_new_with_mem(int options, cmark_mem *mem) {
151148
cmark_parser *parser = (cmark_parser *)mem->calloc(1, sizeof(cmark_parser));
152149
parser->mem = mem;
153150
parser->options = options;
154151
cmark_parser_reset(parser);
152+
cmark_set_default_skip_chars(&parser->skip_chars, false);
153+
cmark_set_default_special_chars(&parser->special_chars, false);
155154
return parser;
156155
}
157156

0 commit comments

Comments
 (0)