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