This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: Bug Report: man2html stackdumps when fed groff_tmac(5), groff(7), and roff(7) manpages.
- To: cygwin at sourceware dot cygnus dot com
- Subject: Re: Bug Report: man2html stackdumps when fed groff_tmac(5), groff(7), and roff(7) manpages.
- From: "Gerrit P. Haase" <gp at familiehaase dot de>
- Date: Sun, 12 Aug 2001 21:22:13 +0200
- Organization: Esse keine toten Tiere
- References: <002701c12357$1c0c9c80$5800000a@max>
- Reply-to: gp at familiehaase dot de
Michael Hoffman schrieb am 2001-08-12, 12:55:
>On Sun, 12 Aug 2001, Max Bowsher wrote:
>
>> man2html segfaults and stackdumps when fed groff_tmac(5), groff(7), and
>> roff(7) manpages.
>>
>> Please could someone with access to a linux machine test whether this cygwin
>> specific or not.
>>
>> Please could other cygwin-users check whether is is just me or not.
>
>Yes, I reproduce this problem on CYGWIN_NT-5.0 1.3.2. In each case I
>get a stackdump whenever man2html gets to a line starting with:
>
>.'char
$ bman groff.7
0 [main] man2html 439 open_stackdumpfile: Dumping stack trace to man2html.exe.stackdump
/bin/bman: line 56: 502 Done zcat $manfile
439 Segmentation fault (core dumped) | man2html >$tmpfile
$ bman 7 roff
0 [main] man2html 388 open_stackdumpfile: Dumping stack trace to man2html.exe.stackdump
/bin/bman: line 56: 433 Done zcat $manfile
388 Segmentation fault (core dumped) | man2html >$tmpfile
Yep, for me, too:
CYGWIN_NT-4.0 1.3.2(0.39/3/2) 2001-05-20 23:28 i686 unknown
But i use this script (bman) which makes an output to InternetExplorer,
i get the stackdump, but i also get the output to the browser.
Default usage see above commands.
BMAN:
=====
#!/bin/bash
if [[ -z $MANPATH ]]; then
manpath="/usr/local/man /usr/man"
else
manpath=${MANPATH//:/ }
fi
startcmd="`cygpath -u -S`/cmd /c start"
if [[ $# -gt 2 || $# -eq 0 ]]; then
echo
echo Usage: `basename $0` [section] topic
echo
exit 2
elif [[ $# -eq 2 ]]; then
section=$1
topic=$2
elif [[ $# -eq 1 ]]; then
section='?'
topic=$1
fi
tmpfile=/usr/doc/Manpages/$topic.html
rm -f $tmpfile
manfile=
for m in $manpath; do
for d in $m/man$section; do
if [[ -d $d ]]; then
for f in [[ $d/$topic.* ]]; do
if [[ -f $f ]]; then
manfile=$f
break 3
fi
done
fi
done
done
if [[ -z $manfile ]]; then
echo
echo `basename $0`: no man page found for $topic
echo
exit 1
else
if [[ $manfile == *gz ]]; then
zcat $manfile | man2html > $tmpfile
elif [[ $manfile == *bz2 ]]; then
bzcat $manfile | man2html > $tmpfile
else
man2html $manfile > $tmpfile
fi
chmod +x $tmpfile
$startcmd `cygpath -w $tmpfile`
fi
#====
#END:
With this script you will have the HTML-Output in /usr/doc/Manpages
which needs to be created if it does not exist. You may also change
the drive in the script pointing to another location.
gph
--
=^..^=
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/