Revolution debugger issues
J. Landman Gay
jacque at hyperactivesw.com
Thu Aug 4 15:12:04 CDT 2005
On 8/4/05 4:13 AM, Dave Cragg wrote:
> For what it's worth, I never use the debugger (Rev's or MC's) when
> working on libUrl. Unfortunately, I don't remember exactly why I gave
> up on it. But I seem to have it fixed in my mind that the debugger
> won't work when there are "out-of-synch" scripts running. (But I may be
> confusing the debugger with try-catch statements which won't work well
> in out-of-synch scripts). My theory (all conjecture) goes something
> like this:
>
> Say you have a handler like this:
>
> on myHandler
> ## some stuff
> load url someUrl
> ##other stuff
> breakpoint
> ##more stuff
> end myHandler
>
> In this case, the load url command will cause liburl to perform a
> number of "read from socket with message" commands. The lines following
> the load url line in your handler will execute in the space between the
> "read" statements in libUrl and the "messages" that get fired when the
> reads complete.
>
> Setting a breakpoint causes the current script to pause at the
> breakpoint. What is less clear is what happens to other scripts that
> may be running or waiting in the background. (read from socket with
> message, pendingMessages, etc.) Are they halted too, or do they try to
> run? And if they are halted, what are the consequences? For example, I
> might expect a socketTimeout if a read was halted for a long time, but
> would this be the case if the read completed, but the firing of its
> associated message was held up. And if background scripts do run at a
> breakpoint, do their variables somehow "bump-out" the variables being
> shown in the variable watcher. Too much for a boy like me to
> contemplate. So after seeing some odd behavior in the debugger while
> working on libUrl (this goes back to MC 2.4.1) I gave up on it. What I
> do now is similar to Scott Rossi's idea of tracking expected values at
> various points in libUrl. I use liburl's own log feature to trace these.
>
> To check if this theory is valid at all, could you replace the "load
> url" statements with "get url"? That would probably eliminate the issue
> of out-of-synch scripts affecting the debugger.
I think you are correct about at least some of this, as "get url" worked
okay for me when I was battling the URL problem last week. It was just
"load" that messed up. But I don't think libURL was the problem. Maybe
it was Ken's variable values bug in action.
I know we've had some private discussion about this problem stack of
mine, but these debugger quirks are happening in a stack that doesn't
use libURL at all (I took that out of the equation for now.) So we may
both have different problems going at the same time.
--
Jacqueline Landman Gay | jacque at hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
More information about the metacard
mailing list