gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] /srv/bzr/gnash/avm2 r9469: Clean up NEWARRAY opcode.


From: Tom Stellard
Subject: [Gnash-commit] /srv/bzr/gnash/avm2 r9469: Clean up NEWARRAY opcode.
Date: Sat, 16 Aug 2008 22:38:25 +0800
User-agent: Bazaar (1.5)

------------------------------------------------------------
revno: 9469
committer: Tom Stellard <address@hidden>
branch nick: gnash_dev
timestamp: Sat 2008-08-16 22:38:25 +0800
message:
  Clean up NEWARRAY opcode.
modified:
  libcore/vm/Machine.cpp
=== modified file 'libcore/vm/Machine.cpp'
--- a/libcore/vm/Machine.cpp    2008-08-15 17:23:32 +0000
+++ b/libcore/vm/Machine.cpp    2008-08-16 14:38:25 +0000
@@ -1341,13 +1341,14 @@
        case SWF::ABC_ACTION_NEWARRAY:
        {
                boost::uint32_t asize = mStream->read_V32();
+               LOG_DEBUG_AVM("Creating array of size %u",asize);
                as_array_object *arr = new as_array_object;
                arr->resize(asize);
                boost::uint32_t i = asize;
-               while (i--)
-                       arr->set_indexed(i, mStack.value(i));
-               mStack.drop(asize - 1);
-               mStack.top(0) = arr;
+               while (i--){
+                       arr->set_indexed(i, pop_stack());
+               }
+               push_stack(as_value(arr));
                break;
        }
 /// 0x57 ABC_ACTION_NEWACTIVATION


reply via email to

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