pinosaur
/
smdp.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
make alignment respect pandoc urls, #63
[smdp.git]
/
src
/
markdown.c
diff --git
a/src/markdown.c
b/src/markdown.c
index
2db9d68
..
8471724
100644
(file)
--- a/
src/markdown.c
+++ b/
src/markdown.c
@@
-62,26
+62,29
@@
deck_t *new_deck() {
return x;
}
return x;
}
-void free_line(line_t *l) {
- line_t *n;
- while (l) {
- n = l->next;
- cstring_delete(l->text);
- free(l);
- l = n;
+void free_line(line_t *line) {
+ line_t *next;
+ while (line) {
+ next = line->next;
+ if(line->text)
+ (line->text->delete)(line->text);
+ free(line);
+ line = next;
}
}
void free_deck(deck_t *deck) {
}
}
void free_deck(deck_t *deck) {
- slide_t *s
, *
t;
+ slide_t *s
lide, *nex
t;
if (deck == NULL)
return;
if (deck == NULL)
return;
- s = deck->slide;
- while (s) {
- free_line(s->line);
- t = s->next;
- free(s);
- s = t;
+ slide = deck->slide;
+ while (slide) {
+ free_line(slide->line);
+ next = slide->next;
+ if (slide == NULL)
+ return;
+ free(slide);
+ slide = next;
}
free_line(deck->header);
free(deck);
}
free_line(deck->header);
free(deck);