New/delete mismatch in DebugStackFrame::indexOfFirstLocal()

Michael Daumling mdaeumli at
Thu Jun 12 10:16:36 PDT 2008

There is more...for example, avmplusDebugger::argumentBounds() assumes
that the 1st argument is "this" which I think is no longer the
least, arg[0] is also on position 0, leading to a crash because it picks
a random value behind argc... 


-----Original Message-----
From: Steven Johnson 
Sent: Thursday, June 12, 2008 10:13 AM
To: Michael Daumling; tamarin-devel at
Subject: Re: New/delete mismatch in DebugStackFrame::indexOfFirstLocal()

Yeah, -Dastrace hasn't been thoroughly exercised in a while... we should
get it working again. Is there a bugzilla bug on it? If not, let's enter
one (or more)... 

On 6/12/08 10:06 AM, "Michael Daumling" <mdaeumli at> wrote:

> Hi all,
> I am experimenting with various command line arguments. -Dastrace is 
> very sensitive:
> 1) If you omit the number, and -Dastrace happened to be the last 
> argument, avmshell crashes.
> 2) In DebugStackFrame::indexOfFirstLocal(), the code looks like this:
> const MethodInfo* mi = trace->env->buildMethodInfo(); int result = 1 +

> mi->param_count; delete mi; // we're done with it, toss it now
> The problem: mi is allocated with new (gc, extra) MethodInfo(), but 
> the global delete operator is called.
> Very ugly.
> Michael
> _______________________________________________
> Tamarin-devel mailing list
> Tamarin-devel at

More information about the Tamarin-devel mailing list