*/
#include <ctype.h>
+#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include "parser.h"
int l = 0; // line length
int hc = 0; // header count
int lc = 0; // line count
- int sc = 0; // slide count
+ int sc = 1; // slide count
int bits = 0; // markdown bits
deck_t *deck = new_deck();
- slide_t *slide = new_slide();
+ slide_t *slide = deck->slide;
line_t *line = NULL;
line_t *tmp = NULL;
cstring_t *text = cstring_init();
- // assign first slide to deck
- deck->slide = slide;
- sc++;
-
while ((c = fgetc(input)) != EOF) {
+ if (ferror(input)) {
+ fprintf(stderr, "markdown_load() failed to read input: %s\n", strerror(errno));
+ exit(EXIT_FAILURE);
+ }
+
if(c == '\n') {
// markdown analyse
}
// split linked list
- line->prev->next = (void*)0;
- line->prev = (void*)0;
+ line->prev->next = NULL;
+ line->prev = NULL;
// remove header lines from slide
deck->slide->line = line;
}
tmp = tmp->next;
}
-
+
for(tmp = line; tmp != list_last_level_1; tmp = tmp->next) {
SET_BIT(tmp->bits, IS_UNORDERED_LIST_1);
}
case 3: SET_BIT(bits, IS_UNORDERED_LIST_3); break;
default: break;
}
-
+
break;
}
}
}
-
+
if(!CHECK_BIT(bits, IS_UNORDERED_LIST_1) &&
!CHECK_BIT(bits, IS_UNORDERED_LIST_2) &&
!CHECK_BIT(bits, IS_UNORDERED_LIST_3)) {
int next_word(cstring_t *text, int i) {
return next_nonblank(text, next_blank(text, i));
}
-