PuTTY semi-bug winhelp-crash
Home
 |
FAQ
 |
Feedback
 |
Licence
 |
Updates
 |
Mirrors
 |
Keys
 |
Links
 |
Team
Download:
Stable
 ·
Snapshot
 |
Docs
 |
Privacy
 |
Changes
 |
Wishlist
summary: Context help causes WinHelp crash after PuTTY help files upgraded
class: semi-bug: This might or might not be a bug, depending on your precise definition of what a bug is.
difficulty: taxing: Needs external things we don't have (standards, users etc)
priority: historic: This is an old bug report that we think is either fixed without noticing, or confined to old systems, or too vague.
Invoking context help from within Windows PuTTY after the PuTTY help
files on a system have been replaced has been observed to cause
WinHelp to crash.
Since the crash occurs in winhelp.exe, it's almost certainly
a WinHelp bug, but perhaps there is something we can do to avoid
triggering it. We're out of ideas, though.
The symptoms I observed (on Win98SE, and also on 2000 when I had
access to it, IIRC) were:
- When using new .HLP and .CNT files (e.g., downloaded into a new
   directory, alongside a new version of PuTTY such as a development
   snapshot), invoking context help consistently causes WINHELP.EXE to
   crash and leave a putty.TMP file lying around.
- However, invoking the Help file without context by pressing
   (say) the Help button on PuTTY's configuration dialog, or invoking it
   from a session's system menu, or from Explorer, works fine (and
   generates a hidden putty.GID file), and subsequently to that, context
   help works too.
- If all the files (including .GID) are moved to a different path,
   things break again.
- Deleting the hidden putty.GID file doesn't appear to cause other
   instances not to break, but it can break a previously-working
   installation if other help files are accessed in the meantime.
- The two installations can be copies of each other and still cause
   trouble.
The precise crash (on Win98SE at least) is: "WINHLP32 caused an
invalid page fault in module WINHLP32.EXE at 0167:004099ba." (A
Google Groups search
finds an apparently unrelated reference, so it's not just us.)
Things I've tried, in desperation:
- Fiddling with the precise macro we pass to HELP_COMMAND.
Changing fromJItoJumpId, or filling in the
first argument (JI(`putty.hlp',`foo.bar')) makes no
difference.
- This page
claims there is an undocumented uCommandvalue to give toWinHelp()-HELP_TOPIC_ID= 259 - which would
avoid the need to use theJImacro at all. However, I've had
no luck with it ("The topic does not exist. Contact your application vendor
for an updated Help file. (129)")
A newsgroup post reports it as broken on Win98.
March 2019: this is now moot, as we no longer ship the .HLP
file (since vuln-chm-hijack).
SGT, 2024-11-17: classifying this bug as historic. It
relates to the old .HLP, file which we don't ship any more anyway.
If you want to comment on this web site, see the
Feedback page.
(last revision of this bug record was at 2024-11-17 15:29:37 +0000)