diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2017-01-09 17:49:57 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2017-01-09 17:49:57 +0000 |
commit | c8505d9515e240b816d67a5b4a08ccfd4268cb6a (patch) | |
tree | b42cfed99cb98d937f607641b3ccd2e90ac6aa18 /tag.c | |
parent | 57d2969f5561fe3980763539d31856762bb3673e (diff) | |
download | mandoc-c8505d9515e240b816d67a5b4a08ccfd4268cb6a.tar.gz mandoc-c8505d9515e240b816d67a5b4a08ccfd4268cb6a.tar.zst mandoc-c8505d9515e240b816d67a5b4a08ccfd4268cb6a.zip |
Use stdout rather than stdin for controlling the terminal
such that "cat foo.mdoc | man -l" works.
Issue reported by Christian Neukirchen <chneukirchen at gmail dot com>
and also tested by him on Void Linux with both glibc and musl.
The patch makes sense to millert@.
Diffstat (limited to 'tag.c')
-rw-r--r-- | tag.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -1,4 +1,4 @@ -/* $Id: tag.c,v 1.16 2016/11/08 16:23:58 schwarze Exp $ */ +/* $Id: tag.c,v 1.17 2017/01/09 17:49:58 schwarze Exp $ */ /* * Copyright (c) 2015, 2016 Ingo Schwarze <schwarze@openbsd.org> * @@ -221,11 +221,11 @@ tag_unlink(void) pid_t tc_pgid; if (tag_files.tcpgid != -1) { - tc_pgid = tcgetpgrp(STDIN_FILENO); + tc_pgid = tcgetpgrp(tag_files.ofd); if (tc_pgid == tag_files.pager_pid || tc_pgid == getpgid(0) || getpgid(tc_pgid) == -1) - (void)tcsetpgrp(STDIN_FILENO, tag_files.tcpgid); + (void)tcsetpgrp(tag_files.ofd, tag_files.tcpgid); } if (*tag_files.ofn != '\0') unlink(tag_files.ofn); |