Subject: RE: 1.5.25-3: Problem with pinfo
From: "Buchbinder, Barry (NIH/NIAID) [E]" <[email-masked]>
To: <[email-masked]>
Cc: "David Rothenberger" <[email-masked]>
Date: Mon, 3 Dec 2007 18:27:56 -0500
List-Id: <cygwin.cygwin.com>

David Rothenberger wrote on Monday, December 03, 2007 12:36 PM:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> 
> I'm having a problem with pinfo under 1.5.25-3. The problem is not
> there with 1.5.24-2. 
> 
> - From a Windows cmd shell, I start bash with "bash -li". Then, I run
> "pinfo rxvt". pinfo just dies with the message "Hangup". I see the
> following in the cmd shell window:  
> 
>      22 [sig] pinfo 6788 C:\cygwin\bin\pinfo.exe: *** fatal error -
> called with threadlist_ix -1 
> 
> I have no problem if I run pinfo.exe directly from the Windows cmd
> shell without first starting bash. I have the same problem if I run
> pinfo from an rxvt or urxvtc window.  

When I had a problem something like that (sorry, I don't remember it exactly, and I certainly do not remember the "Hangup" part), it was related to info directories being out of date.  (Sorry, I cannot give proper credit to the person whose posing suggested it or gave me the idea.

See if this fixes things for you
	/> sh -c /etc/postinstall/update-info-dir.sh.done

As a diagnostic or workaround, you might also see if regular info works.

Also, <update-info-dir.sh> does not take info account and info file in </usr/local/>.  Might I suggest modifying it so that it does.  I know: PTC.  I usually response that I am not a programmer, but this time I can propose something, since I do write shell scripts.  :-)  Sorry it is not a patch.  (I have yet to figure them out.)

- Barry

--snip--
#!/bin/bash

InfoDirs="$(
		for D in /usr/info /usr/share/info /usr/local/info /usr/share/local/info ${INFOPATH//:/ }
		do
			echo "${D}"
		done | \
			sort -u
	)"

for D in ${InfoDirs}
do
	for F in dir dir.info
	do
		if [ -f "${D}/${F}" ]
		then
			/bin/rm -f "${D}/${F}"
		fi
	done
done

for D in ${InfoDirs}
do
	for F in ${D}/*
	do
		if [ -f "${F}" ]
		then
			case "${F}" in
				*\**)
					;;
				*/dir|*/dir.info*)
					;;
				*-[0123456789]*)
					;;
				*)
					install-info --quiet ${F} /usr/share/info/dir ||
					install-info --quiet --entry="* $${F} (${F}): $${F}" $${F} /usr/share/info/dir
					;;
			esac
		fi
	done
done \
	> /dev/null 2>&1
unset D F InfoDirs
--snip--

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/