Constant pool overflow

strk <[email protected]> Wed, 17 Sep 2003 17:58:40 +0200
Newsgroups gmane.comp.web.ming.general
Message-ID <[email protected]>
Hello,
I'm having a constant pool overflow problems with Ming (latest CVS).
The problem seems to be exactly described here:

from: http://www.nowrap.de/flasm.html
--8<---------------------------------
While it's good practice to keep scripts smaller than 64k (compiled) per
frame, it's possible to get larger. But the sole action record - constants,
push, function and other is limited to 64k because of 2 bytes length field
size.

Since flash will create (in 99% of cases) the constant pool for all
variables and methods, overflow is possible.

It's a pity flash itself doesn't tell you the script is too big.
Instead flash compiler writes overflowed value to the length field without
errors or warnings. If you try to execute the swf, flash player crashes,
or actions are omitted. flasm will stop disassembling with an error message
if such overflowed constant pool definition is
encountered in swf.
--8<---------------------------------

I know this is the problem because flasm (as in the last statement)
stops and dumps the error: Too many constants. The output of course
is corrupted (action scrambled don't know how - missing variables),
while the same actionscript file compiled with MX gives successful
result.

This document refers to the flash authoring environment prior to MX.
MX corrects this.

What about Ming ?

--strk;