[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/Property.h server/as_obj...
From: |
Sandro Santilli |
Subject: |
[Gnash-commit] gnash ChangeLog server/Property.h server/as_obj... |
Date: |
Sat, 27 Oct 2007 16:43:45 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 07/10/27 16:43:45
Modified files:
. : ChangeLog
server : Property.h as_object.cpp as_prop_flags.h
testsuite : simple.exp
testsuite/actionscript.all: Global.as
Log message:
* server/as_prop_flags.h: add clear_visible method.
* server/Property.h: add clearVisible method
* server/as_object.cpp: clear visibility flags after
overriding.
* testsuite/simple.exp: double timeout.
* testsuite/actionscript.all/Global.as: more successes
(still not completed).
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4729&r2=1.4730
http://cvs.savannah.gnu.org/viewcvs/gnash/server/Property.h?cvsroot=gnash&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/gnash/server/as_object.cpp?cvsroot=gnash&r1=1.75&r2=1.76
http://cvs.savannah.gnu.org/viewcvs/gnash/server/as_prop_flags.h?cvsroot=gnash&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/simple.exp?cvsroot=gnash&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/actionscript.all/Global.as?cvsroot=gnash&r1=1.34&r2=1.35
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4729
retrieving revision 1.4730
diff -u -b -r1.4729 -r1.4730
--- ChangeLog 27 Oct 2007 13:02:26 -0000 1.4729
+++ ChangeLog 27 Oct 2007 16:43:44 -0000 1.4730
@@ -1,5 +1,15 @@
2007-10-27 Sandro Santilli <address@hidden>
+ * server/as_prop_flags.h: add clear_visible method.
+ * server/Property.h: add clearVisible method
+ * server/as_object.cpp: clear visibility flags after
+ overriding.
+ * testsuite/simple.exp: double timeout.
+ * testsuite/actionscript.all/Global.as: more successes
+ (still not completed).
+
+2007-10-27 Sandro Santilli <address@hidden>
+
* testsuite/actionscript.all/Global.as: use 'delete a.b'
instead of 'delete(a.b)' -- the latter wasn't supported
by erlier Ming versions.
Index: server/Property.h
===================================================================
RCS file: /sources/gnash/gnash/server/Property.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- server/Property.h 26 Oct 2007 22:56:06 -0000 1.11
+++ server/Property.h 27 Oct 2007 16:43:44 -0000 1.12
@@ -217,6 +217,9 @@
/// Is this member supposed to be visible by a VM of given version ?
bool isVisible(int swfVersion) const { return
_flags.get_visible(swfVersion); }
+ /// Clear visibility flags
+ void clearVisible(int swfVersion) { _flags.clear_visible(swfVersion); }
+
/// What is the name of this property?
string_table::key getName() const { return mName; }
Index: server/as_object.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/as_object.cpp,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -b -r1.75 -r1.76
--- server/as_object.cpp 27 Oct 2007 10:53:44 -0000 1.75
+++ server/as_object.cpp 27 Oct 2007 16:43:44 -0000 1.76
@@ -289,6 +289,7 @@
try
{
prop->setValue(*this, val);
+ prop->clearVisible(_vm.getSWFVersion());
return;
}
catch (ActionException& exc)
Index: server/as_prop_flags.h
===================================================================
RCS file: /sources/gnash/gnash/server/as_prop_flags.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- server/as_prop_flags.h 26 Oct 2007 22:56:07 -0000 1.10
+++ server/as_prop_flags.h 27 Oct 2007 16:43:44 -0000 1.11
@@ -155,6 +155,20 @@
return true;
}
+ void clear_visible(int swfVersion)
+ {
+ if ( swfVersion == 6)
+ {
+ // version 6, so let's forget
SWFDEC_AS_VARIABLE_VERSION_7_UP flag, oops!
+ // we will still set the value though, even if that
flag is set
+ _flags &= ~(onlySWF6Up|ignoreSWF6|onlySWF8Up);
+ }
+ else
+ {
+ _flags &=
~(onlySWF6Up|ignoreSWF6|onlySWF7Up|onlySWF8Up);
+ }
+ }
+
/// accesor to the numerical flags value
int get_flags() const { return _flags; }
Index: testsuite/simple.exp
===================================================================
RCS file: /sources/gnash/gnash/testsuite/simple.exp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- testsuite/simple.exp 2 Jul 2007 00:18:25 -0000 1.12
+++ testsuite/simple.exp 27 Oct 2007 16:43:44 -0000 1.13
@@ -12,7 +12,7 @@
# This is to handle deadlocks. We don't reset the timeout when a match is
# found to avoid hanging in case of a testcase sending matches in an infinite
loops.
# (not unlikely as it seems, think about flash movies...)
-set timeout 300
+set timeout 600
set file all
set params ""
Index: testsuite/actionscript.all/Global.as
===================================================================
RCS file: /sources/gnash/gnash/testsuite/actionscript.all/Global.as,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -b -r1.34 -r1.35
--- testsuite/actionscript.all/Global.as 27 Oct 2007 13:02:27 -0000
1.34
+++ testsuite/actionscript.all/Global.as 27 Oct 2007 16:43:45 -0000
1.35
@@ -21,7 +21,7 @@
// compile this test case with Ming makeswf, and then
// execute it like this gnash -1 -r 0 -v out.swf
-rcsid="$Id: Global.as,v 1.34 2007/10/27 13:02:27 strk Exp $";
+rcsid="$Id: Global.as,v 1.35 2007/10/27 16:43:45 strk Exp $";
#include "check.as"
@@ -134,7 +134,7 @@
ASsetPropFlags(a, "m", 128);
check_equals(a.m, undefined);
a.m=2; // will set a own property m
- xcheck_equals(a.m, 2); // ignore flag was cleared
+ check_equals(a.m, 2); // ignore flag was cleared
a = { m:1 };
ASsetPropFlags(a, "m", 256);
@@ -146,13 +146,13 @@
ASsetPropFlags(a, "m", 1024);
check_equals(a.m, undefined);
a.m=2; // will set a own property m
- xcheck_equals(a.m, 2); // ignore flag was cleared
+ check_equals(a.m, 2); // ignore flag was cleared
a = { m:1 };
ASsetPropFlags(a, "m", 4096);
check_equals(a.m, undefined);
a.m=2; // will set a own property m
- xcheck_equals(a.m, 2); // ignore flag was cleared
+ check_equals(a.m, 2); // ignore flag was cleared
#endif // OUTPUT_VERSION == 5
@@ -166,7 +166,7 @@
check_equals(a.m, 9);
a.m=2; // won't call setter, but set a own property m and clear ignore
flag
check_equals(a.s, 9); // setter wasn't called
- xcheck_equals(a.m, 2); // ignore flag was cleared
+ check_equals(a.m, 2); // ignore flag was cleared
ASsetPropFlags(a, "m", 256);
check_equals(a.m, 9); // a own property was set instead
check(delete a.m); // delete a.m
@@ -206,7 +206,7 @@
check_equals(a.m, 9);
a.m=2; // won't call setter, but set a own property m
check_equals(a.s, 9); // setter wasn't called
- xcheck_equals(a.m, 2); // ignore flag was cleared
+ check_equals(a.m, 2); // ignore flag was cleared
ASsetPropFlags(a, "m", 0, 4096);
check_equals(a.m, 2); // a own property was set instead
check(delete a.m); // delete a.m
@@ -231,7 +231,7 @@
check_equals(a.m, 9);
a.m=2; // won't call setter, but set a own property m
check_equals(a.s, 9); // setter wasn't called
- xcheck_equals(a.m, 2); // ignore flag was cleared
+ check_equals(a.m, 2); // ignore flag was cleared
ASSetPropFlags(a, "m", 0, 4096);
check_equals(a.m, 2); // a own property was set instead
check(delete a.m); // delete a.m