diff options
| -rw-r--r-- | src/blocks.c | 17 | 
1 files changed, 8 insertions, 9 deletions
| diff --git a/src/blocks.c b/src/blocks.c index c6a468f..6e2f97a 100644 --- a/src/blocks.c +++ b/src/blocks.c @@ -523,7 +523,6 @@ S_process_line(cmark_parser *parser, const unsigned char *buffer, size_t bytes)  	cmark_list *data = NULL;  	bool all_matched = true;  	cmark_node* container; -	cmark_node* cur = parser->current;  	bool blank = false;  	int first_nonspace;  	int indent; @@ -659,7 +658,7 @@ S_process_line(cmark_parser *parser, const unsigned char *buffer, size_t bytes)  		blank = peek_at(&input, first_nonspace) == '\n';  		if (indent >= CODE_INDENT) { -			if (cur->type != NODE_PARAGRAPH && !blank) { +			if (parser->current->type != NODE_PARAGRAPH && !blank) {  				offset += CODE_INDENT;  				container = add_child(parser, container, NODE_CODE_BLOCK, offset + 1);  				container->as.code.fenced = false; @@ -809,20 +808,20 @@ S_process_line(cmark_parser *parser, const unsigned char *buffer, size_t bytes)  		cont = cont->parent;  	} -	if (cur != last_matched_container && +	if (parser->current != last_matched_container &&  	    container == last_matched_container &&  	    !blank && -	    cur->type == NODE_PARAGRAPH && -	    cmark_strbuf_len(&cur->string_content) > 0) { +	    parser->current->type == NODE_PARAGRAPH && +	    cmark_strbuf_len(&parser->current->string_content) > 0) { -		add_line(cur, &input, offset); +		add_line(parser->current, &input, offset);  	} else { // not a lazy continuation  		// finalize any blocks that were not matched and set cur to container: -		while (cur != last_matched_container) { -			cur = finalize(parser, cur); -			assert(cur != NULL); +		while (parser->current != last_matched_container) { +			parser->current = finalize(parser, parser->current); +			assert(parser->current != NULL);  		}  		if (container->type == NODE_CODE_BLOCK || | 
