deck_t *deck = new_deck();
slide_t *slide = new_slide();
- line_t *line;
+ line_t *line = NULL;
+ line_t *tmp = NULL;
cstring_t *text = cstring_init();
// assign first slide to deck
// markdown analyse
bits = markdown_analyse(text);
+ // if first line in file is markdown hr
+ if(!line && CHECK_BIT(bits, IS_HR)) {
+
+ // clear text
+ (text->reset)(text);
+
// if text is markdown hr
- if(CHECK_BIT(bits, IS_HR) &&
- CHECK_BIT(line->bits, IS_EMPTY)) {
+ } else if(CHECK_BIT(bits, IS_HR) &&
+ CHECK_BIT(line->bits, IS_EMPTY)) {
slide->lines = lc;
if(line->next)
line->next->prev = line->prev;
- // set bits on revious line
+ // set bits on previous line
if(CHECK_BIT(line->bits, IS_H1)) {
SET_BIT(line->prev->bits, IS_H1);
} else {
// adjust line count
slide->lines -= 1;
+ // maintain loop condition
+ tmp = line;
+ line = line->prev;
+
// delete line
- (line->text->delete)(line->text);
- free(line);
+ (tmp->text->delete)(tmp->text);
+ free(tmp);
}
line = line->next;
}