From 675d4eca89a5a01b962c8f830b654f446061284d Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Wed, 7 Jun 2017 17:38:26 +0000 Subject: Prepare the terminal driver for filling multiple columns in parallel, first step: split column data out of the terminal state struct into a new column state struct and use an array of such column state structs. No functional change. --- term_ps.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'term_ps.c') diff --git a/term_ps.c b/term_ps.c index 55d476e2..9638ae4c 100644 --- a/term_ps.c +++ b/term_ps.c @@ -1,4 +1,4 @@ -/* $Id: term_ps.c,v 1.84 2017/05/08 15:34:54 schwarze Exp $ */ +/* $Id: term_ps.c,v 1.85 2017/06/07 17:38:26 schwarze Exp $ */ /* * Copyright (c) 2010, 2011 Kristaps Dzonsons * Copyright (c) 2014, 2015, 2016, 2017 Ingo Schwarze @@ -538,12 +538,15 @@ pspdf_alloc(const struct manoutput *outopts) size_t marginx, marginy, lineheight; const char *pp; - p = mandoc_calloc(1, sizeof(struct termp)); + p = mandoc_calloc(1, sizeof(*p)); + p->tcol = p->tcols = mandoc_calloc(1, sizeof(*p->tcol)); + p->maxtcol = 1; + p->enc = TERMENC_ASCII; p->fontq = mandoc_reallocarray(NULL, - (p->fontsz = 8), sizeof(enum termfont)); + (p->fontsz = 8), sizeof(*p->fontq)); p->fontq[0] = p->fontl = TERMFONT_NONE; - p->ps = mandoc_calloc(1, sizeof(struct termp_ps)); + p->ps = mandoc_calloc(1, sizeof(*p->ps)); p->advance = ps_advance; p->begin = ps_begin; @@ -1220,7 +1223,7 @@ ps_endline(struct termp *p) ps_closepage(p); - p->offset -= p->ti; + p->tcol->offset -= p->ti; p->ti = 0; } -- cgit v1.2.3-56-ge451