Revolution debugger issues
J. Landman Gay
jacque at hyperactivesw.com
Wed Aug 3 23:07:57 CDT 2005
I'm writing to the MC list because I don't want to start a flame fest on
the main Rev list. Is anyone here using the Revolution debugger? There
is a problem with it that has had me going around the bend for the last
week and I'd like some help nailing it down so I can Bugzilla it.
I sent Mark Waddingham a fairly complex stack that exhibits debugging
problems constantly for me, but he couldn't reproduce them. I see that
someone has entered a non-reproducible bug already about how the
debugger exits prematurely when a url is loaded, but the team couldn't
reproduct that either. It is similar to what I am seeing, but I believe
it is a much broader problem than just loading urls.
The basic problem is that while stepping through a script, the debugger
will suddenly exit debugging mode completely. Breakpoints set after the
point where the exit occurs do not break. Debugging becomes impossible
because the error you are trying to find is somewhere after the point
where the debugger stops working. The variable watcher contains no local
values, only the usual globals.
In one of my handlers, it looked like this happened if I set a
breakpoint in a handler that called a function w contained an error. For
example:
on myhandler
BREAKPOINT
put "123" into x
get myfunction(x)
end myhandler
function myfunction tNum
add "a" to tNum -- error here
end myfunction
Something like this in my stack will run to completion, not breaking at
the breakpoint, and then an empty error dialog will appear after it's
all done. Or occasionally the error is not empty, but it is spurious and
has nothing to do with the handler. However, simple tests like this one
run fine. The problem only happens in my big, complex handlers. Because
I can't debug it, I can't figure out where the problem is.
Other things are screwy too; sometimes variables are passed incorrectly.
For example:
on myhandler
put "123" into x
put "abc" into y
myhandler2(x,y) -- error: handler called with function syntax
end myhandler
on myhandler2 var1,var2
-- statements
end myfunction
I accidentally did the above and instead of throwing an error,
myHandler2 ran, but var1 contained "123,abc" and var2 was empty. Because
breakpoints did not stop script execution and because the variable
watcher had no values, it took me days to find the problem.
What I would like is some help pinpointing the problem with some simple
scripts that I can post to Bugzilla. I am frustrated enough to have run
out of energy for it, and my current project is running late. I have
gone back to MC for now. The MC debugger is better, though many times it
goes into a recursive error dialog that can't be dismissed and which
requires a force-quit. I have lost work because of this. Many times.
Hopefully someone who uses both MC and Rev here can shed some light. If
not, I'll ask on the improve list. For a while I thought the problem was
just me, but I received a phone call today from a client today who was
having similar problems and who is just as frustrated as I am.
--
Jacqueline Landman Gay | jacque at hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
More information about the metacard
mailing list