Print this page
5051 import mdocml-1.12.3
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Approved by: TBD

*** 1,6 **** ! /* $Id: tbl.c,v 1.26 2011/07/25 15:37:00 kristaps Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2011 Ingo Schwarze <schwarze@openbsd.org> * * Permission to use, copy, modify, and distribute this software for any --- 1,6 ---- ! /* $Id: tbl.c,v 1.27 2013/05/31 22:08:09 schwarze Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2011 Ingo Schwarze <schwarze@openbsd.org> * * Permission to use, copy, modify, and distribute this software for any
*** 70,113 **** } struct tbl_node * tbl_alloc(int pos, int line, struct mparse *parse) { ! struct tbl_node *p; ! p = mandoc_calloc(1, sizeof(struct tbl_node)); ! p->line = line; ! p->pos = pos; ! p->parse = parse; ! p->part = TBL_PART_OPTS; ! p->opts.tab = '\t'; ! p->opts.linesize = 12; ! p->opts.decimal = '.'; ! return(p); } void ! tbl_free(struct tbl_node *p) { struct tbl_row *rp; struct tbl_cell *cp; struct tbl_span *sp; struct tbl_dat *dp; struct tbl_head *hp; ! while (NULL != (rp = p->first_row)) { ! p->first_row = rp->next; while (rp->first) { cp = rp->first; rp->first = cp->next; free(cp); } free(rp); } ! while (NULL != (sp = p->first_span)) { ! p->first_span = sp->next; while (sp->first) { dp = sp->first; sp->first = dp->next; if (dp->string) free(dp->string); --- 70,113 ---- } struct tbl_node * tbl_alloc(int pos, int line, struct mparse *parse) { ! struct tbl_node *tbl; ! tbl = mandoc_calloc(1, sizeof(struct tbl_node)); ! tbl->line = line; ! tbl->pos = pos; ! tbl->parse = parse; ! tbl->part = TBL_PART_OPTS; ! tbl->opts.tab = '\t'; ! tbl->opts.linesize = 12; ! tbl->opts.decimal = '.'; ! return(tbl); } void ! tbl_free(struct tbl_node *tbl) { struct tbl_row *rp; struct tbl_cell *cp; struct tbl_span *sp; struct tbl_dat *dp; struct tbl_head *hp; ! while (NULL != (rp = tbl->first_row)) { ! tbl->first_row = rp->next; while (rp->first) { cp = rp->first; rp->first = cp->next; free(cp); } free(rp); } ! while (NULL != (sp = tbl->first_span)) { ! tbl->first_span = sp->next; while (sp->first) { dp = sp->first; sp->first = dp->next; if (dp->string) free(dp->string);
*** 114,129 **** free(dp); } free(sp); } ! while (NULL != (hp = p->first_head)) { ! p->first_head = hp->next; free(hp); } ! free(p); } void tbl_restart(int line, int pos, struct tbl_node *tbl) { --- 114,129 ---- free(dp); } free(sp); } ! while (NULL != (hp = tbl->first_head)) { ! tbl->first_head = hp->next; free(hp); } ! free(tbl); } void tbl_restart(int line, int pos, struct tbl_node *tbl) {