[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnash-dev] Re: Hello world working with OpenLaszlo

From: P T Withington
Subject: Re: [Gnash-dev] Re: Hello world working with OpenLaszlo
Date: Mon, 30 Jun 2008 10:23:31 -0400

Hi guys,

Someone here just noticed this on your site:

"Output from openlaszlo as of version 3.4.x is malformed" - I wonder if this is still the case...

And was hoping to get some better PR. I was under the impression we had fixed all the malformed output errors in 4.x, which is our current release.


I don't know whether I dropped the ball or you found better things to do, but the last message I had on getting OL working under Gnash was this, where I send a simple script to test that the basic structure of our runtime class system could work. Did you get to test that?

On 2007-03-01, at 10:16 EST, P T Withington wrote:

This has to work for our classes to work:

<script when="immediate">
 function A () { this.constructor = arguments.callee; };
 A.prototype.test = function () { return true; }

 function B () { this.constructor = arguments.callee; };

 B.prototype = new A();

 B.prototype.test = function () {
   if (this.constructor.prototype.constructor.prototype.test()) {
     _global.trace("it works");

 (new B()).test();

On 2007-03-01, at 09:47 EST, strk wrote:

On Thu, Mar 01, 2007 at 09:42:35AM -0500, P T Withington wrote:
The constructor is the default constructor, which is Instance.make.
The initialize method is called by the constructor as the last thing
before it returns the new instance.

If you build the LFC for the DHTML runtime, you can look at the
'expanded' Javascript, which approximates what is compiled down to SWF.

 buildlfc --runtime=dhtml ...

That might make it easier to understand the class declarations.

Could you try providing a simplified version of this inheritance
model to easy debuggin of Gnash instead ?
A self-testing SWF that uses those 'constructor', 'prototype' and
friend hacking and prints PASSED or FAILED if things don't work
as expected ?


On 2007-03-01, at 09:35 EST, strk wrote:

I've found at least *one* of the nogo points.

Commenting out this line:

LzLoadQueue.timeoutDel = new LzDelegate( LzLoadQueue ,
"checkTimeout" );

In kernel/swf/, get successfully to my trace.

I've changed the code to:

_global.trace('initializing LzLoadQueue.timeoutDel');
LzLoadQueue.timeoutDel = new LzDelegate( LzLoadQueue ,
"checkTimeout" );
_global.trace('LzLoadQueue.timeoutDel (not) initialized');

The second trace is *never* reached.

Now, looking at LzDelegate class definition:


Which function is the constructor ? Is it 'initialize' ?


On Thu, Mar 01, 2007 at 09:01:52AM -0500, P T Withington wrote:
Ah. Sorry about the confusion. Not sure why what I wrote does not

On 2007-03-01, at 08:59 EST, strk wrote:

Found a workaround:

'_global.trace("message");' bypass the surveillance.


On Thu, Mar 01, 2007 at 01:53:21PM +0100, strk wrote:
On Thu, Mar 01, 2007 at 05:57:03AM -0500, P T Withington wrote:

That looks like a 'feature' in the compiler.  It seems that it
intentionally compiles away any `trace` calls.  Perhaps this
was to
avoid debug output in production.

Try building your LFC with:

buildlfc -DcompileTrace=flash ...

No difference, no even additional warnings.
Note that the trace() calls I'm adding to  .lzs files,

On top of LaszloLibrary.lzs:

trace("LaszloLibrary.lzs included");


Gnash-dev mailing list


()   ASCII Ribbon Campaign
/\   Keep it simple!


()   ASCII Ribbon Campaign
/\   Keep it simple!


()   ASCII Ribbon Campaign
/\   Keep it simple!

reply via email to

[Prev in Thread] Current Thread [Next in Thread]