[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] [SCM] Gnash branch, master, updated. 24e90eb9c91394531538
From: |
Benjamin Wolsey |
Subject: |
[Gnash-commit] [SCM] Gnash branch, master, updated. 24e90eb9c913945315389c2999d728d02064849d |
Date: |
Sat, 25 Sep 2010 09:39:46 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Gnash".
The branch, master has been updated
via 24e90eb9c913945315389c2999d728d02064849d (commit)
from 5f0dbb679377e2dee8e8b742395494d1b75d864e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit//commit/?id=24e90eb9c913945315389c2999d728d02064849d
commit 24e90eb9c913945315389c2999d728d02064849d
Author: Benjamin Wolsey <address@hidden>
Date: Sat Sep 25 11:39:27 2010 +0200
Don't look __resolve up twice.
diff --git a/libcore/as_object.cpp b/libcore/as_object.cpp
index a85f119..570c519 100644
--- a/libcore/as_object.cpp
+++ b/libcore/as_object.cpp
@@ -408,17 +408,23 @@ as_object::get_member(const ObjectURI& uri, as_value* val)
// inheritance chain, try the __resolve property.
if (!prop) {
- prop = findProperty(NSV::PROP_uuRESOLVE);
- if (!prop) return false;
+ Property* res = findProperty(NSV::PROP_uuRESOLVE);
+
+ // No __resolve
+ if (!res) return false;
- /// If __resolve exists, call it with the name of the undefined
- /// property.
+ // If __resolve exists, call it with the name of the undefined
+ // property.
string_table& st = getStringTable(*this);
const std::string& undefinedName = st.value(getName(uri));
- log_debug("__resolve exists, calling with '%s'", undefinedName);
- // TODO: we've found the property, don't search for it again.
- *val = callMethod(this, NSV::PROP_uuRESOLVE, undefinedName);
+ fn_call::Args args;
+ args += undefinedName;
+
+ // Invoke the __resolve property.
+ *val = invoke(res->getValue(*this), as_environment(getVM(*this)),
+ this, args);
+
return true;
}
-----------------------------------------------------------------------
Summary of changes:
libcore/as_object.cpp | 20 +++++++++++++-------
1 files changed, 13 insertions(+), 7 deletions(-)
hooks/post-receive
--
Gnash
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] [SCM] Gnash branch, master, updated. 24e90eb9c913945315389c2999d728d02064849d,
Benjamin Wolsey <=