-
-
Notifications
You must be signed in to change notification settings - Fork 809
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
avm2: Match Flash behavior for DoAbc/SymbolClass script initializers
Flash Player handles SymbolClass tags and eager (non-lazy) DoAbc2 tags in an unusual way: During the first time that a given frame is executed: 1. All SymbolClass tags are processed in order, triggering ClassObject loading (and the associated script initializer execution, if it hasn't already been run) 2. All eager (non-lazy) DoAbc/DoAbc2 tags have their *final* script initializer executed. To implement this, we now cache the needed `Script` and symbol class data during preloading. The first time we execute a frame, we run the symbolclass class lookup and assignment, followed by the final script initializer for each DoAbc2 tag in the frame. This fixes 'minidash' (and probably other crossbridge games as well).
- Loading branch information
1 parent
adea7ae
commit 51b5200
Showing
11 changed files
with
234 additions
and
160 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.