CVSROOT: /sources/gnash Module name: gnash Changes by: Sandro Santilli <strk> 07/10/01 16:51:18
Modified files: . : ChangeLog server/vm : ActionExec.cpp Log message: * server/vm/ActionExec.cpp: cleanups in opcode guard code. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4492&r2=1.4493 http://cvs.savannah.gnu.org/viewcvs/gnash/server/vm/ActionExec.cpp?cvsroot=gnash&r1=1.54&r2=1.55 Patches: Index: ChangeLog =================================================================== RCS file: /sources/gnash/gnash/ChangeLog,v retrieving revision 1.4492 retrieving revision 1.4493 diff -u -b -r1.4492 -r1.4493 --- ChangeLog 1 Oct 2007 14:20:18 -0000 1.4492 +++ ChangeLog 1 Oct 2007 16:51:18 -0000 1.4493 @@ -1,3 +1,7 @@ +2007-10-01 Sandro Santilli <[EMAIL PROTECTED]> + + * server/vm/ActionExec.cpp: cleanups in opcode guard code. + 2007-10-01 Benjamin Wolsey <[EMAIL PROTECTED]> * libbase/curl_adapter.cpp: use curl_multi_info_read to get Index: server/vm/ActionExec.cpp =================================================================== RCS file: /sources/gnash/gnash/server/vm/ActionExec.cpp,v retrieving revision 1.54 retrieving revision 1.55 diff -u -b -r1.54 -r1.55 --- server/vm/ActionExec.cpp 30 Sep 2007 05:24:36 -0000 1.54 +++ server/vm/ActionExec.cpp 1 Oct 2007 16:51:18 -0000 1.55 @@ -17,7 +17,7 @@ // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA // -/* $Id: ActionExec.cpp,v 1.54 2007/09/30 05:24:36 zoulunkai Exp $ */ +/* $Id: ActionExec.cpp,v 1.55 2007/10/01 16:51:18 strk Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -338,16 +338,22 @@ #if 1 // See bugs: #20974, #21069, #20996. -#if 0 // action_execution_order_test8.c shows that the opcode guard is not SWF version based (TODO: automate it!) - if ( _abortOnUnload && _original_target->isUnloaded() - && VM::get().getSWFVersion() > 5 /* TODO: cache SWF version */ ) -#else // curveball.swf clearly shows that it is the *current* target, not the *original* one that matters. - if ( _abortOnUnload && env.get_target()->isUnloaded() ) +#if 0 + // curveball.swf and feed.swf break with this + character* guardedChar = env.get_original_target(); // watch out : _original_target is not necessarely the same +#else + // curveball.swf and feed.swf suggest that it is the *current* target, + // not the *original* one that matters. + character* guardedChar = env.get_target(); #endif + + if ( _abortOnUnload && guardedChar->isUnloaded() ) + // action_execution_order_test8.c shows that the opcode guard is not SWF version based (TODO: automate it!) + // && VM::get().getSWFVersion() > 5 { std::stringstream ss; - ss << "Target of action_buffer (" << _original_target->getTarget() - << ") unloaded by execution of opcode: " << std::endl; + ss << "Target of action_buffer (" << guardedChar->getTarget() + << " of type " << typeName(*guardedChar) << ") unloaded by execution of opcode: " << std::endl; dumpActions(pc, next_pc, ss); ss << "Discarding " << stop_pc-next_pc << " bytes of remaining opcodes: " << std::endl; _______________________________________________ Gnash-commit mailing list Gnash-commit@gnu.org http://lists.gnu.org/mailman/listinfo/gnash-commit