New/delete mismatch in DebugStackFrame::indexOfFirstLocal()

Michael Daumling mdaeumli at adobe.com
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 case...at
least, arg[0] is also on position 0, leading to a crash because it picks
a random value behind argc... 


Michael
 

-----Original Message-----
From: Steven Johnson 
Sent: Thursday, June 12, 2008 10:13 AM
To: Michael Daumling; tamarin-devel at mozilla.org
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 adobe.com> 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 mozilla.org
> https://mail.mozilla.org/listinfo/tamarin-devel



More information about the Tamarin-devel mailing list