gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog server/sprite_instance.cpp test...


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/sprite_instance.cpp test...
Date: Tue, 18 Sep 2007 09:49:24 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/09/18 09:49:24

Modified files:
        .              : ChangeLog 
        server         : sprite_instance.cpp 
        testsuite/misc-ming.all: init_action_test.c 
        testsuite/misc-swfc.all: movieclip_destruction_test1.sc 

Log message:
                * server/sprite_instance.cpp (execute_frame_tags): execute
                  init actions *after* DLIST tags.
                * testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
                  No more failures in this case.
                * testsuite/misc-ming.all/init_action_test.c: a single
                  failure was introduced by this comit, for known reason.
                  We decided to accept the failure and take care of it later.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4339&r2=1.4340
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gnash&r1=1.343&r2=1.344
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/misc-ming.all/init_action_test.c?cvsroot=gnash&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/misc-swfc.all/movieclip_destruction_test1.sc?cvsroot=gnash&r1=1.16&r2=1.17

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4339
retrieving revision 1.4340
diff -u -b -r1.4339 -r1.4340
--- ChangeLog   18 Sep 2007 07:35:01 -0000      1.4339
+++ ChangeLog   18 Sep 2007 09:49:23 -0000      1.4340
@@ -1,5 +1,15 @@
 2007-09-18 Sandro Santilli <address@hidden>
 
+       * server/sprite_instance.cpp (execute_frame_tags): execute
+         init actions *after* DLIST tags. 
+       * testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
+         No more failures in this case.
+       * testsuite/misc-ming.all/init_action_test.c: a single
+         failure was introduced by this comit, for known reason.
+         We decided to accept the failure and take care of it later.
+
+2007-09-18 Sandro Santilli <address@hidden>
+
        * server/array.{cpp,h}: Implement enumerateNonProperties().
          Still not 100% correct but fixes youtube controls positioning
          (bug #20469).

Index: server/sprite_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.cpp,v
retrieving revision 1.343
retrieving revision 1.344
diff -u -b -r1.343 -r1.344
--- server/sprite_instance.cpp  17 Sep 2007 12:21:47 -0000      1.343
+++ server/sprite_instance.cpp  18 Sep 2007 09:49:23 -0000      1.344
@@ -2409,6 +2409,26 @@
 
        assert(frame < m_def->get_frame_count());
 
+       const PlayList* playlist = m_def->getPlaylist(frame);
+       if ( playlist )
+       {
+               IF_VERBOSE_ACTION(
+                       // Use 1-based frame numbers
+                       log_action(_("Executing " SIZET_FMT " tags in frame "
+                               SIZET_FMT "/" SIZET_FMT " of sprite %s"),
+                               playlist->size(), frame+1, get_frame_count(),
+                               getTargetPath().c_str());
+               );
+
+               for (PlayList::const_iterator it=playlist->begin(), 
itEnd=playlist->end();
+                               it != itEnd; ++it)
+               {
+                       execute_tag* tag = *it;
+                       if ( typeflags & TAG_DLIST ) tag->execute_state(this);
+                       if ( typeflags & TAG_ACTION ) tag->execute_action(this);
+               }
+       }
+
        // Execute this frame's init actions, if necessary.
        if (m_init_actions_executed[frame] == false)
        {
@@ -2441,25 +2461,6 @@
                }
        }
 
-       const PlayList* playlist = m_def->getPlaylist(frame);
-       if ( playlist )
-       {
-               IF_VERBOSE_ACTION(
-                       // Use 1-based frame numbers
-                       log_action(_("Executing " SIZET_FMT " tags in frame "
-                               SIZET_FMT "/" SIZET_FMT " of sprite %s"),
-                               playlist->size(), frame+1, get_frame_count(),
-                               getTargetPath().c_str());
-               );
-
-               for (PlayList::const_iterator it=playlist->begin(), 
itEnd=playlist->end();
-                               it != itEnd; ++it)
-               {
-                       execute_tag* tag = *it;
-                       if ( typeflags & TAG_DLIST ) tag->execute_state(this);
-                       if ( typeflags & TAG_ACTION ) tag->execute_action(this);
-               }
-       }
 
        testInvariant();
 }

Index: testsuite/misc-ming.all/init_action_test.c
===================================================================
RCS file: /sources/gnash/gnash/testsuite/misc-ming.all/init_action_test.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- testsuite/misc-ming.all/init_action_test.c  1 Jul 2007 10:54:54 -0000       
1.3
+++ testsuite/misc-ming.all/init_action_test.c  18 Sep 2007 09:49:24 -0000      
1.4
@@ -127,7 +127,14 @@
   add_actions(mo, "_root.note('_root.actions');  _root.x += '5+'; ");
   SWFMovie_nextFrame(mo); /* 2nd frame */
 
-  check_equals(mo, "_root.x", "'1+2+3+4+5+6+7+8+9+'");
+  /* The check below used to succeeds, and started failing when
+   * executing init actions "after" DLIST tags.
+   * Should be fixed if we postpone the call to ::construct
+   * to "after" init actions are executed, which would require
+   * some book keeping in sprite_instance class
+   */
+  xcheck_equals(mo, "_root.x", "'1+2+3+4+5+6+7+8+9+'");
+
   check_equals(mo, "_root.y", "'var_of_root'");
   add_actions(mo, " _root.totals(); stop(); ");
   SWFMovie_nextFrame(mo); /* 3rd frame */

Index: testsuite/misc-swfc.all/movieclip_destruction_test1.sc
===================================================================
RCS file: 
/sources/gnash/gnash/testsuite/misc-swfc.all/movieclip_destruction_test1.sc,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- testsuite/misc-swfc.all/movieclip_destruction_test1.sc      18 Sep 2007 
06:27:34 -0000      1.16
+++ testsuite/misc-swfc.all/movieclip_destruction_test1.sc      18 Sep 2007 
09:49:24 -0000      1.17
@@ -135,8 +135,8 @@
   
   .initaction mc3: // Add initactions for mc3(mc3 is not placed)
     _root.initActionExecuted += ", mc3";
-    _root.xcheck_equals(mc1, null);
-    _root.xcheck_equals(typeof(mc1), 'undefined');
+    _root.check_equals(mc1, null);
+    _root.check_equals(typeof(mc1), 'undefined');
     _root.check_equals(typeof(_root.getInstanceAtDepth(-16386)), 'undefined');
   .end
 
@@ -242,9 +242,9 @@
   .initaction mc6: // Add initactions for mc6
     // Gnash fails by not respecting actions order for initactions
     _root.initActionExecuted += ", mc6";
-    _root.xcheck_equals(typeof(mc6), 'movieclip');
-    _root.xcheck_equals(typeof(mc6.mc61), 'movieclip');
-    _root.xcheck_equals(typeof(mc7), 'movieclip');
+    _root.check_equals(typeof(mc6), 'movieclip');
+    _root.check_equals(typeof(mc6.mc61), 'movieclip');
+    _root.check_equals(typeof(mc7), 'movieclip');
     _root.check_equals(this, _root); // target is the root !
   .end
   




reply via email to

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