|
From: | Henry Minsky |
Subject: | [Gnash-dev] Re: OpenLaszlo & Gnash |
Date: | Wed, 14 Feb 2007 15:00:43 -0500 |
On Wed, Feb 14, 2007 at 01:30:12PM -0500, Henry Minsky wrote:
> The structure of a Laszlo application is that the runtime LFC library is
> compiled entirely by the script compiler, it is just a big action block.
>
> Then, the user's application is also compiled by the script compiler into a
> big action block.
>
> Then those are inserted into a kind of boilerplate framework which is
> generated using the old JGenerator library which we've modified somewhat.
> That is generated by the source code in
> WEB-INF/lps/server/src/org/openlaszlo/compiler/SWFFile.java, and consists of
> various resources and trampolines into the LFC, such as buttons for catching
> click events, keyboard events, and a video object which can be attached to
> play video.
>
> The question I have is whether the bad opcode is coming from our script
> compiler, or whether it comes in somehow when the app is assembled by
> placing the compiled script code into the application framework.
The Gnash-detected error is in a PLACEOBJECT2 tag events . You can also
see tha name of the instanciated character (frameupdate) :
SWF[444]: tag type = 26, tag length = 381
place_object_2
depth = 2
char id = 5
name = frameupdate
actions: flags = 0xF0
20:15:11: MALFORMED SWF: swf_event::read(), event_length = 84, but read 83. Skipping excessive bytes.
20:15:11: MALFORMED SWF: swf_event::read(), event_length = 82, but read 81. Skipping excessive bytes.
20:15:11: MALFORMED SWF: swf_event::read(), event_length = 79, but read 78. Skipping excessive bytes.
20:15:11: MALFORMED SWF: swf_event::read(), event_length = 77, but read 76. Skipping excessive bytes.
I'm both interested in making sure Gnash is fail-safe against this malformation
(the proprietary player is) and improve Gnash support for the ActionScript part, which
is also unsupported currently.
The ActionScript failure is about a 'prototype' member being undefined (namely: prototype.prototype).
--strk;
[Prev in Thread] | Current Thread | [Next in Thread] |