From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from localhost (fantadrom.bsd.lv [local]) by fantadrom.bsd.lv (OpenSMTPD) with ESMTPA id 4c9b32ae for ; Mon, 31 Jul 2017 11:14:40 -0500 (EST) Date: Mon, 31 Jul 2017 11:14:40 -0500 (EST) Message-Id: <3347360425314899229.enqueue@fantadrom.bsd.lv> X-Mailinglist: mandoc-source Reply-To: source@mandoc.bsd.lv MIME-Version: 1.0 From: schwarze@mandoc.bsd.lv To: source@mandoc.bsd.lv Subject: mandoc: Ignore explicitly specified negative column widths rather than X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain; charset=utf-8 Log Message: ----------- Ignore explicitly specified negative column widths rather than wrapping around to huge numbers and risking memory exhaustion; fixes Debian ps(1). Bug reported by Dr. Markus Waldeck. Modified Files: -------------- mandoc: tbl_html.c tbl_term.c Revision Data ------------- Index: tbl_term.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl_term.c,v retrieving revision 1.56 retrieving revision 1.57 diff -Ltbl_term.c -Ltbl_term.c -u -p -r1.56 -r1.57 --- tbl_term.c +++ tbl_term.c @@ -51,7 +51,10 @@ static void tbl_word(struct termp *, con static size_t term_tbl_sulen(const struct roffsu *su, void *arg) { - return term_hen((const struct termp *)arg, su); + int i; + + i = term_hen((const struct termp *)arg, su); + return i > 0 ? i : 0; } static size_t Index: tbl_html.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl_html.c,v retrieving revision 1.22 retrieving revision 1.23 diff -Ltbl_html.c -Ltbl_html.c -u -p -r1.22 -r1.23 --- tbl_html.c +++ tbl_html.c @@ -49,6 +49,9 @@ html_tbl_strlen(const char *p, void *arg static size_t html_tbl_sulen(const struct roffsu *su, void *arg) { + if (su->scale < 0.0) + return 0; + switch (su->unit) { case SCALE_FS: /* 2^16 basic units */ return su->scale * 65536.0 / 24.0; -- To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv