[Top][All Lists]
[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;
}