gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog server/swf/ASHandlers.cpp


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/swf/ASHandlers.cpp
Date: Mon, 07 Aug 2006 21:06:55 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  06/08/07 21:06:55

Modified files:
        .              : ChangeLog 
        server/swf     : ASHandlers.cpp 

Log message:
                * server/swf/ASHandlers.cpp: allow WaitForFrame actions
                  to always wait (and never skip actions) by mean of
                  a compile-time define.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.599&r2=1.600
http://cvs.savannah.gnu.org/viewcvs/gnash/server/swf/ASHandlers.cpp?cvsroot=gnash&r1=1.46&r2=1.47

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.599
retrieving revision 1.600
diff -u -b -r1.599 -r1.600
--- ChangeLog   7 Aug 2006 20:43:38 -0000       1.599
+++ ChangeLog   7 Aug 2006 21:06:55 -0000       1.600
@@ -1,5 +1,8 @@
 2006-08-07 Sandro Santilli <address@hidden>
 
+       * server/swf/ASHandlers.cpp: allow WaitForFrame actions 
+         to always wait (and never skip actions) by mean of
+         a compile-time define.
        * server/sprite_instance.cpp: simplified code in advance_root
          to use the new specialized movie_definition::load_next_frame_chunk()
        * server/movie_def_impl.cpp: implemented frame chunk loading,

Index: server/swf/ASHandlers.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/swf/ASHandlers.cpp,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -b -r1.46 -r1.47
--- server/swf/ASHandlers.cpp   7 Aug 2006 18:56:14 -0000       1.46
+++ server/swf/ASHandlers.cpp   7 Aug 2006 21:06:55 -0000       1.47
@@ -57,6 +57,13 @@
 
 using namespace std;
 
+// Define this to have WaitForFrame actions really
+// wait for target frame (and never skip actions)
+// See:
+//  http://sswf.sourceforge.net/SWFalexref.html#action_wait_for_frame
+//
+#undef REALLY_WAIT_ON_WAIT_FOR_FRAME
+
 // Forward declarations
 namespace gnash {
        extern fscommand_callback s_fscommand_handler;
@@ -663,6 +670,12 @@
                return;
        }
 
+       // Actually *wait* for target frame, and never skip any action
+#ifdef REALLY_WAIT_ON_WAIT_FOR_FRAME
+       target_sprite->get_movie_definition()->ensure_frame_loaded(framenum);
+       assert(target_sprite->get_loaded_frames() >= framenum);
+#endif
+
        size_t lastloaded = target_sprite->get_loaded_frames();
        if ( lastloaded < framenum )
        {
@@ -1314,6 +1327,11 @@
 
        size_t framenum = target_sprite->get_frame_number(framespec);
 
+#ifdef REALLY_WAIT_ON_WAIT_FOR_FRAME
+       target_sprite->get_movie_definition()->ensure_frame_loaded(framenum);
+       assert(target_sprite->get_loaded_frames() >= framenum);
+#endif
+
        size_t lastloaded = target_sprite->get_loaded_frames();
        if ( lastloaded < framenum )
        {




reply via email to

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