about summary refs log tree commit diff
path: root/src/usr.bin/vis
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr.bin/vis')
-rw-r--r--src/usr.bin/vis/foldit.c6
-rw-r--r--src/usr.bin/vis/vis.c5
2 files changed, 8 insertions, 3 deletions
diff --git a/src/usr.bin/vis/foldit.c b/src/usr.bin/vis/foldit.c
index f9abd99..aaa0592 100644
--- a/src/usr.bin/vis/foldit.c
+++ b/src/usr.bin/vis/foldit.c
@@ -1,4 +1,4 @@
-/*	$OpenBSD: foldit.c,v 1.7 2013/11/12 22:51:18 deraadt Exp $	*/
+/*	$OpenBSD: foldit.c,v 1.8 2020/08/17 18:41:23 martijn Exp $	*/
 /*	$NetBSD: foldit.c,v 1.4 1994/12/20 16:13:02 jtc Exp $	*/
 
 /*-
@@ -38,6 +38,7 @@ int
 foldit(char *chunk, int col, int max)
 {
 	char *cp;
+	int first = (col != 0);
 
 	/*
 	 * Keep track of column position. Insert hidden newline
@@ -61,8 +62,11 @@ again:
 			col++;
 		}
 		if (col > (max - 2)) {
+			if (!first)
+				return (col);
 			printf("\\\n");
 			col = 0;
+			first = 0;
 			goto again;
 		} 
 		cp++;
diff --git a/src/usr.bin/vis/vis.c b/src/usr.bin/vis/vis.c
index 38aa9d7..56c25a5 100644
--- a/src/usr.bin/vis/vis.c
+++ b/src/usr.bin/vis/vis.c
@@ -1,4 +1,4 @@
-/*	$OpenBSD: vis.c,v 1.20 2016/08/31 09:45:00 jsg Exp $	*/
+/*	$OpenBSD: vis.c,v 1.21 2020/08/03 01:08:37 deraadt Exp $	*/
 /*	$NetBSD: vis.c,v 1.4 1994/12/20 16:13:03 jtc Exp $	*/
 
 /*-
@@ -130,10 +130,11 @@ void
 process(FILE *fp)
 {
 	static int col = 0;
-	char *cp = "\0"+1;	/* so *(cp-1) starts out != '\n' */
+	char *cp = "\0";
 	int c, rachar; 
 	char buff[5];
 	
+	cp++;			/* so *(cp-1) starts out != '\n' */
 	c = getc(fp);
 	while (c != EOF) {
 		rachar = getc(fp);