gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog server/movie_root.cpp


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/movie_root.cpp
Date: Wed, 09 Jan 2008 09:11:02 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/01/09 09:11:02

Modified files:
        .              : ChangeLog 
        server         : movie_root.cpp 

Log message:
        (setLevel): remove interval timers when replacing _level0.
        Add note about additional things to check for that case.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.5350&r2=1.5351
http://cvs.savannah.gnu.org/viewcvs/gnash/server/movie_root.cpp?cvsroot=gnash&r1=1.142&r2=1.143

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.5350
retrieving revision 1.5351
diff -u -b -r1.5350 -r1.5351
--- ChangeLog   9 Jan 2008 08:29:35 -0000       1.5350
+++ ChangeLog   9 Jan 2008 09:11:01 -0000       1.5351
@@ -1,5 +1,11 @@
 2008-01-08 Sandro Santilli <address@hidden>
 
+       * server/movie_root.cpp (setLevel): remove interval
+         timers when replacing _level0. Add note about additional
+         things to check for that case.
+
+2008-01-08 Sandro Santilli <address@hidden>
+
        * server/movie_root.{cpp,h}: clear the interval timeouts
          on restart/reset/clear.
 

Index: server/movie_root.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/movie_root.cpp,v
retrieving revision 1.142
retrieving revision 1.143
diff -u -b -r1.142 -r1.143
--- server/movie_root.cpp       9 Jan 2008 08:29:36 -0000       1.142
+++ server/movie_root.cpp       9 Jan 2008 09:11:02 -0000       1.143
@@ -186,6 +186,35 @@
        else
        {
                // don't leak overloaded levels
+
+               LevelMovie lm = it->second;
+               if ( lm == _rootMovie.get() )
+               {
+                       // NOTE: this is not enough to trigger
+                       //       an application reset. Was tested
+                       //       but not automated. If curious
+                       //       use swapDepths against _level0
+                       //       and load into the new target while
+                       //       a timeout/interval is active.
+                       log_debug("Replacing starting movie");
+               }
+
+               if ( num == 0 )
+               {
+                       log_debug("Loading into _level0");
+
+                       // NOTE: this was tested but not automated, the
+                       //       test sets an interval and then loads something
+                       //       in _level0. The result is the interval is 
disabled.
+                       clearIntervalTimers();
+
+
+                       // TODO: check what else we should do in these cases 
+                       //       (like, unregistering all childs etc...)
+                       //       Tested, but not automated, is that other
+                       //       levels should be maintained alive.
+               }
+
                it->second->destroy();
                it->second = movie;
        }




reply via email to

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