[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnash-commit] gnash ChangeLog libbase/string_table.cpp libbas...
From: |
strk |
Subject: |
Re: [Gnash-commit] gnash ChangeLog libbase/string_table.cpp libbas... |
Date: |
Tue, 23 Oct 2007 19:39:41 +0200 |
On Thu, Oct 18, 2007 at 11:47:57AM +0000, Chad Musick wrote:
> http://cvs.savannah.gnu.org/viewcvs/gnash/server/as_object.cpp?cvsroot=gnash&r1=1.68&r2=1.69
> - // found a getter/setter property in the inheritance chain
> - // so set that and return
> - Property* prop = findGetterSetter(key);
> - if ( prop )
> - {
> - try
> +// Handles read_only and static properties properly.
> +void
> +as_object::set_member_default(string_table::key key, const as_value& val,
> + string_table::key nsname)
> +{
> + //log_msg(_("set_member_default(%s)"), key.c_str());
> + Property* prop = findProperty(key, nsname);
Chad, it seems this change broke something, see my new test in
actionscript.all/Object.as
This is the problem:
class A : B : C
C.m is a getter-setter
B.m is a normal property
A.m doesn't exist
When setting A.m, the getter-setter should be invoked.
findProperty would find B.m and return that while findGetterSetter would
find C.m.
No idea about the new isStatic thing.
--strk;