CVSROOT: /sources/gnash Module name: gnash Changes by: Sandro Santilli <strk> 07/11/27 11:28:51
Modified files: . : ChangeLog server : dlist.cpp testsuite/actionscript.all: MovieClip.as Log message: Don't destroy childs of an unloaded parent immediately. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4981&r2=1.4982 http://cvs.savannah.gnu.org/viewcvs/gnash/server/dlist.cpp?cvsroot=gnash&r1=1.103&r2=1.104 http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/actionscript.all/MovieClip.as?cvsroot=gnash&r1=1.103&r2=1.104 Patches: Index: ChangeLog =================================================================== RCS file: /sources/gnash/gnash/ChangeLog,v retrieving revision 1.4981 retrieving revision 1.4982 diff -u -b -r1.4981 -r1.4982 --- ChangeLog 27 Nov 2007 11:08:22 -0000 1.4981 +++ ChangeLog 27 Nov 2007 11:28:50 -0000 1.4982 @@ -1,3 +1,10 @@ +2007-11-27 Sandro Santilli <[EMAIL PROTECTED]> + + * server/dlist.cpp (unload): don't destroy childs when unloading + parent. + * testsuite/actionscript.all/MovieClip.as: success in tests + of accessibility of unloaded sprites' childs. + 2007-11-27 Benjamin Wolsey <[EMAIL PROTECTED]> * server/asobj/NetStreamFfmpeg.cpp: don't try to free codec context Index: server/dlist.cpp =================================================================== RCS file: /sources/gnash/gnash/server/dlist.cpp,v retrieving revision 1.103 retrieving revision 1.104 diff -u -b -r1.103 -r1.104 --- server/dlist.cpp 26 Nov 2007 10:39:35 -0000 1.103 +++ server/dlist.cpp 27 Nov 2007 11:28:50 -0000 1.104 @@ -729,7 +729,7 @@ if ( ! di->unload() ) // no event handler queued, we remove { - di->destroy(); + //di->destroy(); // will be destroyed on next iteration, or by unload handler ? we don't want soft-ref to rebind here it = _charsByDepth.erase(it); } else Index: testsuite/actionscript.all/MovieClip.as =================================================================== RCS file: /sources/gnash/gnash/testsuite/actionscript.all/MovieClip.as,v retrieving revision 1.103 retrieving revision 1.104 diff -u -b -r1.103 -r1.104 --- testsuite/actionscript.all/MovieClip.as 27 Nov 2007 11:05:28 -0000 1.103 +++ testsuite/actionscript.all/MovieClip.as 27 Nov 2007 11:28:50 -0000 1.104 @@ -20,7 +20,7 @@ // compile this test case with Ming makeswf, and then // execute it like this gnash -1 -r 0 -v out.swf -rcsid="$Id: MovieClip.as,v 1.103 2007/11/27 11:05:28 strk Exp $"; +rcsid="$Id: MovieClip.as,v 1.104 2007/11/27 11:28:50 strk Exp $"; #include "check.as" @@ -523,9 +523,9 @@ check_equals(softref3child._target, '/hardref3/hardref3child'); check_equals(softref3child.getDepth(), 1); removeMovieClip(softref3child); // using ActionRemoveClip (0x25) -xcheck_equals(softref3child2.member, '3child2'); -xcheck_equals(softref3child2._target, '/hardref3/hardref3child2'); -xcheck_equals(softref3child2.getDepth(), 2); +check_equals(softref3child2.member, '3child2'); +check_equals(softref3child2._target, '/hardref3/hardref3child2'); +check_equals(softref3child2.getDepth(), 2); hardref = 4; // Delete is needed, or further inspection functions will hit the variable before the character delete hardref; _______________________________________________ Gnash-commit mailing list Gnash-commit@gnu.org http://lists.gnu.org/mailman/listinfo/gnash-commit