[ltk-user] Mysterious breakage
Daniel Herring
dherring at tentpost.com
Tue Oct 5 01:27:45 UTC 2010
On Tue, 5 Oct 2010, Jonathan Johansen wrote:
> I tried using Ltk a while back (running Phil's Able editor), and immediately ran into the kind of problem you report. I found that bringing up a msgbox as the first thing to do, and dismissing it by pressing Enter (not by clicking)
> was one way to avoid the hang. Unfortunately that's all I can add. I'm pretty sure there are a few more people that would be very happy to see this bug get fixed. I hit it and just stopped trying to do GUI programming, so if it
> get's fixed, I'll be very happy, and willing to test things on my 'eerie' computer.
So the patches I sent several months ago make things work 100% on my xp
box. It is my belief that the problem is some oddity of how
ms-broken-windows handles process creation and/or stream i/o.
What I saw (e.g. the ABLE window not appearing until after I terminated
clisp) lead me to believe that ltk was writing everything to the wish
shell before it entered the Tk event loop; thus Tk never received
notification of pending data until the stream was closed. Strategic
placement of a (sleep 1) solved my problem and reinforced my belief.
That said, I did a bunch of tinkering, never breaking out proper debug
tools. Its possible I just moved a race condition away from my computer
and towards others. To diagnose this properly, someone needs to break out
the debuggers and attach to both lisp and wish after the startup hang.
Backtraces should show what each is doing, hopefully pointing out where
the deadlock occurs.
These links may help.
http://msdn.microsoft.com/en-us/library/c6wf8e4z.aspx
http://www.microsoft.com/whdc/devtools/debugging/default.mspx
Later,
Daniel
More information about the ltk-user
mailing list