The branch main has been updated by wosch:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=14a5c1068d3751173dc41f3097b12e95791b2160

commit 14a5c1068d3751173dc41f3097b12e95791b2160
Author:     Wolfram Schneider <wo...@freebsd.org>
AuthorDate: 2024-04-20 08:24:58 +0000
Commit:     Wolfram Schneider <wo...@freebsd.org>
CommitDate: 2024-04-20 08:30:33 +0000

    man: do not ignore the exit status of roff tools
    
    PR:             223516
    Approved by:    emaste, bapt
    Differential Revision:  https://reviews.freebsd.org/D44798
---
 usr.bin/man/man.sh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/usr.bin/man/man.sh b/usr.bin/man/man.sh
index fd51648757a9..03803b777463 100755
--- a/usr.bin/man/man.sh
+++ b/usr.bin/man/man.sh
@@ -33,6 +33,12 @@
 # it is better to terminate it.
 ulimit -t 20
 
+# do not ignore the exit status of roff tools
+set -o pipefail
+
+# ignore SIGPIPE exits because pagers may exit before reading all their input.
+trap '' SIGPIPE
+
 # Usage: add_to_manpath path
 # Adds a variable to manpath while ensuring we don't have duplicates.
 # Returns true if we were able to add something. False otherwise.
@@ -312,7 +318,7 @@ man_check_for_so() {
        # We need to loop to accommodate multiple .so directives.
        while true
        do
-               line=$($cattool "$manpage" | head -n1)
+               line=$($cattool "$manpage" 2>/dev/null | head -n1)
                case "$line" in
                .so*)   trim "${line#.so}"
                        decho "$manpage includes $tstr"

Reply via email to