awayfl/avm2

Regression in ABC file parsing

Closed this issue · 2 comments

n0samu commented

Description
AwayFL is crashing while parsing the ABC of the Papa's Freezeria SWF file. The error is:

Uncaught TypeError: Cannot read properties of undefined (reading 'namespaces')
    at ABCFile._parseMultiname (ABCFile.js:201:1)
    at ABCFile._parseMultinames (ABCFile.js:150:1)
    at new ABCFile (ABCFile.js:29:1)
    at FlashSceneGraphFactory.executeABCBytes (FlashSceneGraphFactory.js:33:1)
    at SWFParser.parseSymbols (SWFParser.js:233:1)
    at SWFParser._pProceedParsing (SWFParser.js:218:1)
    at ParserBase._pOnInterval (ParserBase.js:257:1)
    at ParserBase._this._pOnIntervalDelegate (ParserBase.js:48:1)
    at ListenerObject.dispatchEvent (EventDispatcher.js:99:1)
    at EventDispatcher.dispatchEvent (EventDispatcher.js:50:1)

I've bisected this regression to commit 0906b7c. The SWF works fine before this commit is applied.

Steps to reproduce the issue
To reproduce the problem, try to load the current Papa's Freezeria SWF from Coolmath into the current version of AwayFL.

n0samu commented

The same commit also broke Wonderputt.

n0samu commented

Fixed in eee05b2. (Wonderputt is still broken though)