After a couple of e-mail exchanges with YH Chen, we've managed to get to the bottom of this one.
When upgrading, the XP installer performs a number of rewrites in the the user Registry hives. In particular, it tries to adjust references to point to the new OS system directory rather than the old one. So, when it comes across -E"c:\\windows\\notepad.exe" in a user's Winhugs option string, it adjusts this to -E"c:\windows\system32\notepad.exe" (assuming c:\windows is where you opted to put the XP install). It miserably fails to maintain the escaping of the backslashes though, causing WinHugs to complain of illegal character escapes the next time it starts up. A bug in the XP installer, I'd claim. To solve/work around this one either download&use my 'restore' utility from the Hugs PowerToys page, http://galois.com/~sof/hugs/PowerToys.html, or perform the following piece of Registry micro surgery: * start up 'regedit' (via Start->Run) * navigate down into HKEY_CURRENT_USER\Software\Haskell\Hugs\WinhugsDecember 2001 * double-click on the Option value in the right hand pane window. A dialog window that lets you edit the Registry value's data should then pop up. * Go to the end of that string and delete the -E"...." portion and hit OK. * Quit 'regedit' and start up Winhugs. Future releases of (Win)Hugs will be able to handle this more robustly. hth --sigbjorn ----- Original Message ----- From: "Sigbjorn Finne" <[EMAIL PROTECTED]> To: "YH Chen" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Thursday, March 21, 2002 16:50 Subject: Re: Unable to start WinHugs > Hi, > > this one is a bit mysterious. I managed to reproduce it a while ago with a > beta > version of XP (and fixed it by simply re-installing Hugs), but am unable to > reproduce > it now when upgrading a vanilla Win 98 install with the RTM version of XP. > > In the less-than-likely event that it'll tell me something interesting, > could you > send me a copy of the Prelude.hs WinHugs is failing on + line number? > > thanks, > --sigbjorn > > btw, It is also worth checking that the uninstall completely deletes the > Hugs98/ directory before installing Hugs98 again. > > > ----- Original Message ----- > From: YH Chen > To: [EMAIL PROTECTED] > Sent: Tuesday, March 19, 2002 13:08 > Subject: Unable to start WinHugs > > > I recently upgraded from WinME to WinXP, and in doing so, I discovered that > I can't start up WinHugs anymore. Whevever I try to do so, the Hugs > interpreter window shows up as normal, but with: ERROR - Illegal character > escape sequence "\W" . A Hugs popup shows up: FATAL ERROR: Unable to > locate prelude. > > I've tried uninstalling and reinstalling Hugs (I'm using the 12/01 version) > but to no avail. > > I hope the info provided will help you resolve what's wrong and let me run > WinHugs again. If you need any more info, please feel free to contact me > via this email address. > > _______________________________________________ Hugs-Bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/hugs-bugs
