=================================================================== RCS file: /cvs/mandoc/Attic/mdoc_action.c,v retrieving revision 1.53 retrieving revision 1.56 diff -u -p -r1.53 -r1.56 --- mandoc/Attic/mdoc_action.c 2010/04/06 11:33:00 1.53 +++ mandoc/Attic/mdoc_action.c 2010/05/14 15:26:39 1.56 @@ -1,4 +1,4 @@ -/* $Id: mdoc_action.c,v 1.53 2010/04/06 11:33:00 kristaps Exp $ */ +/* $Id: mdoc_action.c,v 1.56 2010/05/14 15:26:39 kristaps Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons * @@ -44,7 +44,7 @@ struct actions { static int concat(struct mdoc *, char *, const struct mdoc_node *, size_t); -static inline int order_rs(int); +static inline int order_rs(enum mdoct); static int post_ar(POST_ARGS); static int post_at(POST_ARGS); @@ -196,7 +196,7 @@ static const struct actions mdoc_actions[MDOC_MAX] = { #define RSORD_MAX 14 -static const int rsord[RSORD_MAX] = { +static const enum mdoct rsord[RSORD_MAX] = { MDOC__A, MDOC__T, MDOC__B, @@ -366,9 +366,10 @@ post_st(POST_ARGS) assert(MDOC_TEXT == n->child->type); p = mdoc_a2st(n->child->string); - assert(p); - free(n->child->string); - n->child->string = mandoc_strdup(p); + if (p != NULL) { + free(n->child->string); + n->child->string = mandoc_strdup(p); + } return(1); } @@ -419,7 +420,7 @@ post_sh(POST_ARGS) if ( ! concat(m, buf, n->child, BUFSIZ)) return(0); - sec = mdoc_atosec(buf); + sec = mdoc_str2sec(buf); /* * The first section should always make us move into a non-new * state. @@ -945,11 +946,11 @@ post_display(POST_ARGS) static inline int -order_rs(int t) +order_rs(enum mdoct t) { int i; - for (i = 0; i < RSORD_MAX; i++) + for (i = 0; i < (int)RSORD_MAX; i++) if (rsord[i] == t) return(i);