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 serv...


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/sprite_instance.cpp serv...
Date: Mon, 12 Feb 2007 14:18:43 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/02/12 14:18:43

Modified files:
        .              : ChangeLog 
        server         : sprite_instance.cpp sprite_instance.h 

Log message:
                * server/sprite_instance.{cpp,h}: reverted
                  goto_frame patch introducing regression failures.
                  See bug #19020.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.2328&r2=1.2329
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gnash&r1=1.156&r2=1.157
http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.h?cvsroot=gnash&r1=1.64&r2=1.65

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.2328
retrieving revision 1.2329
diff -u -b -r1.2328 -r1.2329
--- ChangeLog   12 Feb 2007 14:00:45 -0000      1.2328
+++ ChangeLog   12 Feb 2007 14:18:42 -0000      1.2329
@@ -1,5 +1,11 @@
 2007-02-12 Sandro Santilli <address@hidden>
 
+       * server/sprite_instance.{cpp,h}: reverted
+         goto_frame patch introducing regression failures.
+         See bug #19020.
+
+2007-02-12 Sandro Santilli <address@hidden>
+
        * server/tesselate.cpp: std::fabsf => std::abs.
        * server/execute_tag.h: doxygen documentation,
          add new execute_action() function.

Index: server/sprite_instance.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.cpp,v
retrieving revision 1.156
retrieving revision 1.157
diff -u -b -r1.156 -r1.157
--- server/sprite_instance.cpp  12 Feb 2007 14:00:05 -0000      1.156
+++ server/sprite_instance.cpp  12 Feb 2007 14:18:42 -0000      1.157
@@ -1455,7 +1455,6 @@
        m_goto_frame_action_list(),
        m_play_state(PLAY),
        m_current_frame(0),
-       m_executing_frame(0),
        m_update_frame(true),
        m_has_looped(false),
        m_init_actions_executed(),
@@ -2440,46 +2439,16 @@
        // Advance everything in the display list.
        m_display_list.advance(delta_time);
 
-       //
-       // executing all target frames actions
-       //
-       while( m_executing_frame != m_current_frame )
-       {
-               //
-               // Construct the DisplayList of the target frame
-               //
-               if ( m_current_frame < m_executing_frame)
-               // go backward to a previous frame
+       if ( ! m_goto_frame_action_list.empty() )
                {
-                       for (size_t f = m_executing_frame; f>m_current_frame; 
--f)
-                       {
-                               execute_frame_tags_reverse(f);
-                       }
-               }
-               else if (m_current_frame > m_executing_frame)
-               // go forward to a later frame
-               {
-                       for (size_t f = m_executing_frame+1; f<m_current_frame; 
++f)
-                       {
-                               execute_frame_tags(f, TAG_DLIST);
-                       } 
-               }
-               m_action_list.clear();
-               
-               // extract the target frame actions
-               execute_frame_tags(m_current_frame, TAG_DLIST|TAG_ACTION);
-               // store the target frame actions to m_goto_frame_action_list
-               m_goto_frame_action_list = m_action_list; 
-               m_action_list.clear(); 
-               
-               // set the current executing frame to the target frame
-               m_executing_frame = m_current_frame; 
-               
-               // execute the target frame actions. while executing, the target
-               // frame could be changed again.
+               IF_VERBOSE_ACTION(
+               log_action(" Executing %u actions in "
+                       "goto_frame_action_list",
+                       m_goto_frame_action_list.size());
+               );
                execute_actions(m_goto_frame_action_list);
                assert(m_goto_frame_action_list.empty());
-       } ;
+       }
        
 }
 
@@ -2717,13 +2686,7 @@
                m_def->ensure_frame_loaded(target_frame_number+1);
        }
        
-       m_current_frame = target_frame_number;      
 
-       // ActionGotoFrame tells the movieClip to go to the target frame 
-       //  and stops at that frame. 
-       set_play_state(STOP);
-       
-       /*
        //
        // Construct the DisplayList of the target frame
        //
@@ -2786,7 +2749,7 @@
        //  unfortunately the actions in the current frame have already been 
ruined 
        //  by above code.(Zou)
        m_action_list.clear();
-       */
+
 }
 
 bool sprite_instance::goto_labeled_frame(const char* label)
@@ -3022,15 +2985,11 @@
 {
        //GNASH_REPORT_FUNCTION;
 
-       m_executing_frame++;
-  m_current_frame = m_executing_frame;
-
        size_t frame_count = m_def->get_frame_count();
-       if ( m_current_frame >= frame_count )
+       if ( ++m_current_frame >= frame_count )
        {
                // Loop.
                m_current_frame = 0;
-               m_executing_frame = 0;
                m_has_looped = true;
                if (frame_count > 1)
                {

Index: server/sprite_instance.h
===================================================================
RCS file: /sources/gnash/gnash/server/sprite_instance.h,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -b -r1.64 -r1.65
--- server/sprite_instance.h    12 Feb 2007 14:00:05 -0000      1.64
+++ server/sprite_instance.h    12 Feb 2007 14:18:43 -0000      1.65
@@ -17,7 +17,7 @@
 // 
 //
 
-/* $Id: sprite_instance.h,v 1.64 2007/02/12 14:00:05 strk Exp $ */
+/* $Id: sprite_instance.h,v 1.65 2007/02/12 14:18:43 strk Exp $ */
 
 // Stateful live Sprite instance
 
@@ -631,7 +631,7 @@
        // the _currentframe property
        size_t          m_current_frame;
        // the frame which contains the current executing actions
-       size_t      m_executing_frame; 
+       //size_t      m_executing_frame; 
        bool            m_update_frame;
        bool            m_has_looped;
 




reply via email to

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