From owner-svn-src-all@freebsd.org Mon Dec 4 12:33:47 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A4320DFB7A9; Mon, 4 Dec 2017 12:33:47 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6E8F366786; Mon, 4 Dec 2017 12:33:47 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id vB4CXkQF068939; Mon, 4 Dec 2017 12:33:46 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id vB4CXkYH068938; Mon, 4 Dec 2017 12:33:46 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201712041233.vB4CXkYH068938@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Mon, 4 Dec 2017 12:33:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r326526 - head/usr.bin/man X-SVN-Group: head X-SVN-Commit-Author: bapt X-SVN-Commit-Paths: head/usr.bin/man X-SVN-Commit-Revision: 326526 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Dec 2017 12:33:47 -0000 Author: bapt Date: Mon Dec 4 12:33:46 2017 New Revision: 326526 URL: https://svnweb.freebsd.org/changeset/base/326526 Log: In case man(1) found a catpage to display skip looking ".so" which is manpage only. In case we are trying to read a catpage, the manpage variable is not defined. It results in the "cattool" having no arguments. In case the catpage is compressed, the cattool used is "zcat" which dies if the standard input is a terminal, meaning the function calling it is exiting as if there were no ".so" In case the catpage is uncompressed, the cattool used is "zcat -f" which waits reading standard input, making the man(1) command hang. PR: 223560 Reported by: wosch MFC after: 3 days Modified: head/usr.bin/man/man.sh Modified: head/usr.bin/man/man.sh ============================================================================== --- head/usr.bin/man/man.sh Mon Dec 4 11:25:34 2017 (r326525) +++ head/usr.bin/man/man.sh Mon Dec 4 12:33:46 2017 (r326526) @@ -276,6 +276,9 @@ man_check_for_so() { local IFS line tstr unset IFS + if [ -n "$catpage" ]; then + return 0 + fi # We need to loop to accommodate multiple .so directives. while true