[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] /srv/bzr/gnash/avm2 r9565: Rename mAsValueScopeStack to m
From: |
Tom Stellard |
Subject: |
[Gnash-commit] /srv/bzr/gnash/avm2 r9565: Rename mAsValueScopeStack to mScopeStack and change its type to SafeStack<boost::intrusive_ptr<as_object> > . |
Date: |
Sat, 13 Sep 2008 18:30:51 +0800 |
User-agent: |
Bazaar (1.5) |
------------------------------------------------------------
revno: 9565
committer: Tom Stellard <address@hidden>
branch nick: gnash_dev
timestamp: Sat 2008-09-13 18:30:51 +0800
message:
Rename mAsValueScopeStack to mScopeStack and change its type to
SafeStack<boost::intrusive_ptr<as_object> > .
modified:
libcore/vm/Machine.cpp
libcore/vm/Machine.h
=== modified file 'libcore/vm/Machine.cpp'
--- a/libcore/vm/Machine.cpp 2008-09-13 09:06:12 +0000
+++ b/libcore/vm/Machine.cpp 2008-09-13 10:30:51 +0000
@@ -720,25 +720,25 @@
case SWF::ABC_ACTION_PUSHWITH:
{
// A scope object is just a regular object.
- ENSURE_OBJECT(mStack.top(0));
- as_object *a = mStack.top(0).to_object().get();
-
- if (!mScopeStack.empty())
- a->set_prototype(mScopeStack.top(0).mScope);
- else
- a->set_prototype(NULL);
-
- if (opcode == SWF::ABC_ACTION_PUSHWITH &&
- mScopeStack.totalSize() == mScopeStack.size())
- {
- mScopeStack.push(Scope(0, a));
- }
- else
- {
- mScopeStack.push(Scope(mScopeStack.size(), a));
- }
- mCurrentScope = a;
- mStack.drop(1);
+// ENSURE_OBJECT(mStack.top(0));
+// as_object *a = mStack.top(0).to_object().get();
+//
+// if (!mScopeStack.empty())
+// a->set_prototype(mScopeStack.top(0).mScope);
+// else
+// a->set_prototype(NULL);
+//
+// if (opcode == SWF::ABC_ACTION_PUSHWITH &&
+// mScopeStack.totalSize() == mScopeStack.size())
+// {
+// mScopeStack.push(Scope(0, a));
+// }
+// else
+// {
+// mScopeStack.push(Scope(mScopeStack.size(), a));
+// }
+// mCurrentScope = a;
+// mStack.drop(1);
break;
}
/// 0x1D ABC_ACTION_POPSCOPE
@@ -1539,7 +1539,8 @@
/// global -- The global scope object
case SWF::ABC_ACTION_GETGLOBALSCOPE:
{
- push_stack(mAsValueScopeStack.value(0));
+ //TODO: Use get_scope_stack here.
+ push_stack(as_value(mScopeStack.value(0).get()));
// print_stack();
break;
}
@@ -1569,7 +1570,7 @@
//TODO: If multiname is runtime we need to also pop namespace
and name values of the stack.
as_value obj = pop_stack();
as_value val;
- obj.to_object().get()->get_member(a.getGlobalName(), &val);
+ obj.to_object().get()->get_member(a.getGlobalName(), &val);
push_stack(val);
@@ -2566,7 +2567,7 @@
s.to_debug_string();
// mStack.setAllSizes(s.mStackTotalSize, s.mStackDepth);
// mScopeStack.setAllSizes(s.mScopeTotalSize, s.mScopeStackDepth);
- mAsValueScopeStack.setAllSizes(s.mScopeTotalSize, s.mScopeStackDepth);
+ mScopeStack.setAllSizes(s.mScopeTotalSize, s.mScopeStackDepth);
mStream = s.mStream;
mRegisters = s.mRegisters;
// mExitWithReturn = s.mReturn;
@@ -2586,8 +2587,8 @@
State &s = mStateStack.top(0);
s.mStackDepth = mStack.getDownstop();
s.mStackTotalSize = mStack.totalSize();
- s.mScopeStackDepth = mAsValueScopeStack.getDownstop();
- s.mScopeTotalSize = mAsValueScopeStack.totalSize();
+ s.mScopeStackDepth = mScopeStack.getDownstop();
+ s.mScopeTotalSize = mScopeStack.totalSize();
// s.mScopeStackDepth = mScopeStack.getDownstop();
// s.mScopeTotalSize = mScopeStack.totalSize();
s.mStream = mStream;
@@ -2655,7 +2656,7 @@
asClass* theClass = mPoolObject->locateClass(className);
clearRegisters();
mStack.clear();
- mAsValueScopeStack.clear();
+ mScopeStack.clear();
mRegisters[0] = as_value(global);
executeCodeblock(theClass->getConstructor()->getBody());
}
@@ -2673,14 +2674,14 @@
as_value Machine::find_prop_strict(asName multiname){
as_value val;
- mAsValueScopeStack.push(as_value(mGlobalObject));
- for(int i=0;i<mAsValueScopeStack.size();i++){
+ mScopeStack.push(mGlobalObject);
+ for(int i=0;i<mScopeStack.size();i++){
- val =
mAsValueScopeStack.top(i).to_object().get()->getMember(multiname.getGlobalName(),multiname.getNamespace()->getURI());
+ val =
mScopeStack.top(i).get()->getMember(multiname.getGlobalName(),multiname.getNamespace()->getURI());
if(!val.is_undefined()){
- push_stack(mAsValueScopeStack.top(i));
- mAsValueScopeStack.pop();
+ push_stack(mScopeStack.top(i));
+ mScopeStack.pop();
return val;
}
}
@@ -2693,7 +2694,7 @@
std::string path = ns.size() == 0 ? name : ns + "." + name;
val = env.get_variable(path,*getScopeStack(),&target);
push_stack(as_value(target));
- mAsValueScopeStack.pop();
+ mScopeStack.pop();
return val;
}
@@ -2746,8 +2747,8 @@
std::stringstream ss;
ss << "ScopeStack: ";
- for(unsigned int i=0;i<mAsValueScopeStack.size();++i){
- ss << mAsValueScopeStack.top(i).toDebugString();
+ for(unsigned int i=0;i<mScopeStack.size();++i){
+ ss << as_value(mScopeStack.top(i).get()).toDebugString();
}
LOG_DEBUG_AVM("%s", ss.str());
}
@@ -2770,8 +2771,8 @@
as_environment::ScopeStack* Machine::getScopeStack(){
as_environment::ScopeStack *stack = new as_environment::ScopeStack();
- for(int i=0;i<mAsValueScopeStack.size();i++){
- stack->push_back(mAsValueScopeStack.top(i).to_object());
+ for(int i=0;i<mScopeStack.size();i++){
+ stack->push_back(mScopeStack.top(i));
}
return stack;
}
=== modified file 'libcore/vm/Machine.h'
--- a/libcore/vm/Machine.h 2008-09-13 08:38:38 +0000
+++ b/libcore/vm/Machine.h 2008-09-13 10:30:51 +0000
@@ -293,24 +293,23 @@
void push_scope_stack(as_value object){
LOG_DEBUG_AVM("Pushing value onto the scope stack.");
- mAsValueScopeStack.push(object);
- LOG_DEBUG_AVM("There are now %u items on the scope
stack.",mAsValueScopeStack.size());
+ mScopeStack.push(object.to_object());
+ LOG_DEBUG_AVM("There are now %u items on the scope
stack.",mScopeStack.size());
}
- as_value pop_scope_stack(){
- LOG_DEBUG_AVM("Poping value off the scope stack. There will be
%u items left.",mAsValueScopeStack.size()-1);
- return mAsValueScopeStack.pop();
+ boost::intrusive_ptr<as_object> pop_scope_stack(){
+ LOG_DEBUG_AVM("Poping value off the scope stack. There will be
%u items left.",mScopeStack.size()-1);
+ return mScopeStack.pop();
}
- as_value get_scope_stack(boost::uint8_t depth){
+ boost::intrusive_ptr<as_object> get_scope_stack(boost::uint8_t depth){
LOG_DEBUG_AVM("Geting value from scope stack %u from the
bottom.",depth | 0x0);
- return as_value(mAsValueScopeStack.value(depth));
+ return mScopeStack.value(depth);
}
SafeStack<as_value> mStack;
SafeStack<State> mStateStack;
- SafeStack<Scope> mScopeStack;
std::vector<as_value> mRegisters;
- SafeStack<as_value> mAsValueScopeStack;
+ SafeStack<boost::intrusive_ptr<as_object> > mScopeStack;
CodeStream *mStream;
ClassHierarchy *mCH;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] /srv/bzr/gnash/avm2 r9565: Rename mAsValueScopeStack to mScopeStack and change its type to SafeStack<boost::intrusive_ptr<as_object> > .,
Tom Stellard <=