Note that there are some explanatory texts on larger screens.

plurals
  1. PODebugging a flash stack overflow
    text
    copied!<p>I have a swf that is being loaded by a third party swf. I have source code and recompile my swf, but don't have code to the third party swf.</p> <p>Somewhere, likely in my code, there's a stack overflow. In a debug flash player, I get a nice popup dialog with a stack trace when the overflow occurs:</p> <pre><code>Error: Error #1023: Stack overflow occurred. at Object$/Object::_hasOwnProperty() at Object/http://adobe.com/AS3/2006/builtin::hasOwnProperty() at Object$/Object::_hasOwnProperty() at Object/http://adobe.com/AS3/2006/builtin::hasOwnProperty() at Object$/Object::_hasOwnProperty() </code></pre> <p>It goes on like this for 64 lines. However, it looks like I'm only seeing the last 64 stack frames, not the whole stack trace.</p> <p>Is there a way to see the full stack trace? As an alternative, is there a way to limit the stack depth?</p> <p>I've spent a full day trying to debug this, but am running on very little information, and a lack of tools. Here's what I've tried:</p> <ul> <li>Hooking my code up to a debugger. This is in flash 9.0.28 running in windows inside a VM, connecting to flex builder running outside the VM. It appears to connect, but I don't get trace statements, and breakpoints don't fire.</li> <li>Sending log lines to an http server. This works, but I suspect I'm missing the last n stack frames before the overflow/server crash.</li> <li>A blind, binary search type approach disabling portions of code - this is slow, but probably will work.</li> </ul> <p>Any other strategies I should be trying?</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload