gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] /srv/bzr/gnash/avm2 r9568: Clean up INITPROPERTY opcode.


From: Tom Stellard
Subject: [Gnash-commit] /srv/bzr/gnash/avm2 r9568: Clean up INITPROPERTY opcode.
Date: Sun, 14 Sep 2008 02:31:43 +0800
User-agent: Bazaar (1.5)

------------------------------------------------------------
revno: 9568
committer: Tom Stellard <address@hidden>
branch nick: gnash_dev
timestamp: Sun 2008-09-14 02:31:43 +0800
message:
  Clean up INITPROPERTY opcode.
modified:
  libcore/vm/Machine.cpp
=== modified file 'libcore/vm/Machine.cpp'
--- a/libcore/vm/Machine.cpp    2008-09-13 17:51:12 +0000
+++ b/libcore/vm/Machine.cpp    2008-09-13 18:31:43 +0000
@@ -1594,14 +1594,13 @@
                asName a = pool_name(index, mPoolObject);
                as_value v = pop_stack();
                //TODO: If multiname is a runtime mutiname we need to also pop 
name and namespace values.
-               as_value object = pop_stack();
-               if(object.is_undefined()){
+               as_value object_asval = pop_stack();
+               if(object_asval.is_undefined()){
                        LOG_DEBUG_AVM("Object is undefined will skip trying to 
initialize property.");
                }
                else{
-                       LOG_DEBUG_AVM("Initializing property ABC_id=%u name=%s 
on object 
%s",a.getABCName(),mPoolObject->mStringPool[a.getABCName()],object.toDebugString());
-
-                       
object.to_object().get()->init_member(mPoolObject->mStringPool[a.getABCName()],v,0,0);
+                       as_object& obj = *object_asval.to_object().get();
+                       !obj.set_member(a.getGlobalName(),v,false);
                }
                break;
        }


reply via email to

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