diff options
author | Wolfram Schneider <wosch@FreeBSD.org> | 2024-01-25 07:14:06 +0000 |
---|---|---|
committer | Wolfram Schneider <wosch@FreeBSD.org> | 2024-01-25 07:14:06 +0000 |
commit | b8a484ec343d163a40f7cf4a6026e880f992c738 (patch) | |
tree | c51850d122e3f091815b7efaa7396700888d3739 | |
parent | fbd156d78fbdc5e1984afe4d83436b624e7a1f01 (diff) | |
download | src-b8a484ec343d163a40f7cf4a6026e880f992c738.tar.gz src-b8a484ec343d163a40f7cf4a6026e880f992c738.zip |
man: support special characters in filenames
man.sh needs to handle double quotes and sub shell character
as '`' '$' etc.
PR: 275967
Reviewed by: bapt
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D43453
-rwxr-xr-x | usr.bin/man/man.sh | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/usr.bin/man/man.sh b/usr.bin/man/man.sh index efb05603f912..4be38083462c 100755 --- a/usr.bin/man/man.sh +++ b/usr.bin/man/man.sh @@ -349,7 +349,7 @@ man_display_page() { decho "Command: $cattool \"$catpage\" | $MANPAGER" ret=0 else - eval "$cattool \"$catpage\" | $MANPAGER" + $cattool "$catpage" | $MANPAGER ret=$? fi fi @@ -374,7 +374,7 @@ man_display_page() { pipeline="mandoc $mandoc_args | $MANPAGER" fi - if ! eval "$cattool \"$manpage\" | $testline" ;then + if ! $cattool "$manpage" | eval "$testline"; then if which -s groff; then man_display_page_groff else @@ -387,10 +387,10 @@ man_display_page() { fi if [ $debug -gt 0 ]; then - decho "Command: $cattool \"$manpage\" | $pipeline" + decho "Command: $cattool \"$manpage\" | eval \"$pipeline\"" ret=0 else - eval "$cattool \"$manpage\" | $pipeline" + $cattool "$manpage" | eval "$pipeline" ret=$? fi } @@ -480,10 +480,10 @@ man_display_page_groff() { fi if [ $debug -gt 0 ]; then - decho "Command: $cattool \"$manpage\" | $pipeline" + decho "Command: $cattool \"$manpage\" | eval \"$pipeline\"" ret=0 else - eval "$cattool \"$manpage\" | $pipeline" + $cattool "$manpage" | eval "$pipeline" ret=$? fi } |