[Laszlo-checkins] r11719 - openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf

ptw@openlaszlo.org ptw at openlaszlo.org
Mon Nov 10 09:56:04 PST 2008


Author: ptw
Date: 2008-11-10 09:56:02 -0800 (Mon, 10 Nov 2008)
New Revision: 11719

Modified:
   openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf/LzSprite.as
Log:
Change 20081110-ptw-4 by ptw at dueling-banjos.home on 2008-11-10 11:26:06 EST
    in /Users/ptw/OpenLaszlo/trunk-2
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Re-repair queued play actions

Bugs Fixed:
LPP-7295  http://localhost:8080/trunk-clean/examples/music/music.lzx hangs Flash player
LPP-5338 LzView play attribute doesn't work as advertised. (swf8)

Technical Reviewer: max (pending)
QA Reviewer: a.bargull at intensis.de (Message-ID: <49187283.4000900 at udo.edu>)

Details:
    Change test for no resource to be a) null mcRef, or b) mcRef is
    for clip named 'empty'

Tests:
    music.lzx no longer hangs player (in swf8, swf9), lpp-5338 test
    case still works (swf8)



Modified: openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf/LzSprite.as
===================================================================
--- openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf/LzSprite.as	2008-11-10 16:30:54 UTC (rev 11718)
+++ openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf/LzSprite.as	2008-11-10 17:56:02 UTC (rev 11719)
@@ -1367,11 +1367,13 @@
   * Otherwise f is relative to the beginning of the resource.
   */
 LzSprite.prototype.play = function (f, rel){
-    // NOTE: [2008-10-29 ptw] We want to know if we have
-    // already have a clip assigned or not and queue this action if
-    // not, hence we check __LZhaser
+    // NOTE: [2008-10-29 ptw] We need to queue if a) we are loading a
+    // source (getMCRef will be null), or b) we don't (yet) have our
+    // resource assigned (resource will be "empty").  IWBNI getMCRef
+    // returned null in the latter case, but I couldn't tell if that
+    // would break it's contract with the rest of the world...
     var m = this.getMCRef();
-    if ( this.__LZhaser ) {
+    if ( m == null || this.resource == "empty" ) {
         this.queuePlayAction( "play" , f , rel );
         return;
     }
@@ -1395,11 +1397,13 @@
   * Otherwise it is relative to the start position of the resource.
   */
 LzSprite.prototype.stop = function (f, rel){
-    // NOTE: [2008-10-29 ptw] We want to know if we have
-    // already have a clip assigned or not and queue this action if
-    // not, hence we check __LZhaser
+    // NOTE: [2008-10-29 ptw] We need to queue if a) we are loading a
+    // source (getMCRef will be null), or b) we don't (yet) have our
+    // resource assigned (resource will be "empty").  IWBNI getMCRef
+    // returned null in the latter case, but I couldn't tell if that
+    // would break it's contract with the rest of the world...
     var m = this.getMCRef();
-    if ( this.__LZhaser ) {
+    if ( m == null || this.resource == "empty" ) {
         // always stop on the first frame
         this.queuePlayAction( "stop" , 0);
         return;



More information about the Laszlo-checkins mailing list