Closed Bug 765912 Opened 12 years ago Closed 6 years ago

Match player ABC handling behavior with SWFs

Categories

(Tamarin Graveyard :: Virtual Machine, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: alexmac, Unassigned)

References

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5

Steps to reproduce:

The VM currently handles SWFs differently than the player w.r.t. abc parsing/execution and the handling of the lazy flag in the swf.

In our case we have several ABCs with the the lazy eval flag in the swf tags set to false. In the player all the ABCs are visited in file order and their traits read (prepareActionBlock). Whilst visiting the ABCs any non-lazy ABCs are added to a queue in file order (see QueueAbcBuffer in PlayerAvmCore.cpp:1887). Once a ShowFrame tag is encountered the last script init for each ABC in this queue is executed. This allows non-lazy ABCs to contain forward references to traits in ABCs later in the SWF.

The shell currently walks the ABCs in file order and either reads the traits (via parseActionBlock) if the ABC is marked as lazy, or reads the traits and executes the last script init if the ABC is non-lazy. This results in ABCS with forward references to traits failing with reference errors.
Depends on: 765893
Attachment #634175 - Attachment is patch: true
Attachment #634175 - Flags: review?(stan)
Attachment #634175 - Flags: review?(stan) → review+
Tamarin is a dead project now. Mass WONTFIX.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
Tamarin isn't maintained anymore. WONTFIX remaining bugs.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: