about summary refs log tree commit diff
path: root/mscan.c
diff options
context:
space:
mode:
Diffstat (limited to 'mscan.c')
-rw-r--r--mscan.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/mscan.c b/mscan.c
index 0494409..4052f1f 100644
--- a/mscan.c
+++ b/mscan.c
@@ -575,9 +575,13 @@ main(int argc, char *argv[])
 
 	struct winsize w;
 	int ttyfd = open("/dev/tty", O_RDONLY | O_NOCTTY);
-	if (ttyfd >= 0 && ioctl(ttyfd, TIOCGWINSZ, &w) == 0) {
-		cols = w.ws_col;
+	if (ttyfd >= 0) {
+		if (ioctl(ttyfd, TIOCGWINSZ, &w) == 0)
+			cols = w.ws_col;
+		close(ttyfd);
+	}
 
+	if (isatty(1)) {
 		char *pg;
 		pg = getenv("MBLAZE_PAGER");
 		if (!pg)
@@ -590,8 +594,6 @@ main(int argc, char *argv[])
 				    pg, strerror(errno));
 		}
 	}
-	if (ttyfd >= 0)
-		close(ttyfd);
 
 	xpledge("stdio rpath", "");