mandoc: fix segfaults with some pages (See #273)

This commit is contained in:
Dylan Araps 2021-07-12 13:28:48 +03:00
parent dce9f05156
commit ecb8dda212
No known key found for this signature in database
GPG Key ID: 13295DAC2CF13B5C
4 changed files with 23 additions and 0 deletions

View File

@ -1,6 +1,7 @@
#!/bin/sh -e
patch -p1 < mandoc-no-warn.patch
patch -p1 < fix-tbl-segfault.patch
# Change default pager.
sed 's,"more -s","less",g' main.c > _

View File

@ -1,2 +1,3 @@
8219b42cb56fc07b2aa660574e6211ac38eefdbf21f41b698d3348793ba5d8f7
eaff34c03d1b6741cf6b24a394c63ad6096e4391578414b9da986294ee817a25
12e6138be6ec2e8a34373876d8a5fce387a1d2b51a461ae20e1d98637af1d15c

View File

@ -0,0 +1,20 @@
--- tbl_term.c 2020-08-18 12:35:27.290953791 +0200
+++ tbl_term.c 2020-08-18 12:35:23.450952148 +0200
@@ -626,7 +626,7 @@
lw = cpp == NULL || cpn == NULL ||
(cpn->pos != TBL_CELL_DOWN &&
- (dpn == NULL || strcmp(dpn->string, "\\^") != 0))
+ (dpn == NULL || dpn->pos == TBL_DATA_NONE || strcmp(dpn->string, "\\^") != 0))
? hw : 0;
tbl_direct_border(tp, BHORIZ * lw,
col->width + col->spacing / 2);
@@ -670,7 +670,7 @@
rw = cpp == NULL || cpn == NULL ||
(cpn->pos != TBL_CELL_DOWN &&
- (dpn == NULL || strcmp(dpn->string, "\\^") != 0))
+ (dpn == NULL || dpn->pos == TBL_DATA_NONE || strcmp(dpn->string, "\\^") != 0))
? hw : 0;
/* The line crossing at the end of this column. */

View File

@ -1,2 +1,3 @@
https://fossies.org/linux/misc/mandoc-1.14.5.tar.gz
patches/mandoc-no-warn.patch
patches/fix-tbl-segfault.patch