gnash-commit
[Top][All Lists]
Advanced

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

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


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/character.cpp
Date: Wed, 18 Jun 2008 11:22:38 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/06/18 11:22:38

Modified files:
        .              : ChangeLog 
        server         : character.cpp 

Log message:
                * server/character.cpp (getTarget): don't abort when called for
                  characters created by new (MovieClip, Video, TextField).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6969&r2=1.6970
http://cvs.savannah.gnu.org/viewcvs/gnash/server/character.cpp?cvsroot=gnash&r1=1.107&r2=1.108

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6969
retrieving revision 1.6970
diff -u -b -r1.6969 -r1.6970
--- ChangeLog   18 Jun 2008 07:53:46 -0000      1.6969
+++ ChangeLog   18 Jun 2008 11:22:37 -0000      1.6970
@@ -1,3 +1,8 @@
+2008-06-18 Sandro Santilli <address@hidden>
+
+       * server/character.cpp (getTarget): don't abort when called for 
+         characters created by new (MovieClip, Video, TextField).
+
 2008-06-18 Benjamin Wolsey <address@hidden>
 
        * testsuite/actionscript.all/Matrix.as: some tests fail on ming

Index: server/character.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/character.cpp,v
retrieving revision 1.107
retrieving revision 1.108
diff -u -b -r1.107 -r1.108
--- server/character.cpp        17 Jun 2008 13:43:37 -0000      1.107
+++ server/character.cpp        18 Jun 2008 11:22:38 -0000      1.108
@@ -865,12 +865,23 @@
                // Don't push the _root name on the stack
                if ( ! parent )
                {
-                       assert(dynamic_cast<const movie_instance*>(ch));
                        std::stringstream ss;
+                       if (!dynamic_cast<const movie_instance*>(ch))
+                       {
+                               // must be an as-referenceable
+                               // character created using 'new'
+                               // like, new MovieClip, new Video, new 
TextField...
+                               // 
+                               log_debug("Character %p (%s) doesn't have a 
parent and is not a movie_instance",
+                                       ch, typeName(*ch));
+                               ss << "<no parent, depth" << ch->get_depth() << 
">";
+                               path.push_back(ss.str());
+                       }
+                       else
+                       {
                        ss << "_level" << 
ch->get_depth()-character::staticDepthOffset;
                        path.push_back(ss.str());
-                       // it is completely legal to set root's _name
-                       //assert(ch->get_name().empty());
+                       }
                        break;
                }
 




reply via email to

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