[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/asobj/Global.cpp server/...
From: |
Benjamin Wolsey |
Subject: |
[Gnash-commit] gnash ChangeLog server/asobj/Global.cpp server/... |
Date: |
Wed, 16 Apr 2008 09:26:28 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Benjamin Wolsey <bwy> 08/04/16 09:26:28
Modified files:
. : ChangeLog
server/asobj : Global.cpp GMath.h Math.cpp
Log message:
* server/asobj/{GMath.h,Math.cpp}: split registering native
functions into a separate method (registerMathNative), which
must be called at startup (logical enough...), or at least
before the Math class is initialized.
* server/asobj/Global.cpp: register Math ASnative functions
at startup for SWF4+. Return to loading Math class on demand.
Notify ClassHierarchy about Date initialization (though this
can be reverted if Date ASnatives are initialized separately).
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6292&r2=1.6293
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Global.cpp?cvsroot=gnash&r1=1.112&r2=1.113
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/GMath.h?cvsroot=gnash&r1=1.20&r2=1.21
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Math.cpp?cvsroot=gnash&r1=1.31&r2=1.32
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6292
retrieving revision 1.6293
diff -u -b -r1.6292 -r1.6293
--- ChangeLog 16 Apr 2008 08:58:45 -0000 1.6292
+++ ChangeLog 16 Apr 2008 09:26:27 -0000 1.6293
@@ -1,3 +1,14 @@
+2008-04-16 Benjamin Wolsey <address@hidden>
+
+ * server/asobj/{GMath.h,Math.cpp}: split registering native
+ functions into a separate method (registerMathNative), which
+ must be called at startup (logical enough...), or at least
+ before the Math class is initialized.
+ * server/asobj/Global.cpp: register Math ASnative functions
+ at startup for SWF4+. Return to loading Math class on demand.
+ Notify ClassHierarchy about Date initialization (though this
+ can be reverted if Date ASnatives are initialized separately).
+
2008-04-16 Sandro Santilli <address@hidden>
* testsuite/misc-ming.all/ButtonEventsTest.c: self-contain
@@ -5,7 +16,6 @@
is more explicitly visible now (gets an additional
unexpected MOUSEOUT event when MOUSEUPOUTSIDE is expected).
-
2008-04-16 Sandro Santilli <address@hidden>
* testsuite/misc-ming.all/: ButtonEventsTest-Runner.cpp,
Index: server/asobj/Global.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/Global.cpp,v
retrieving revision 1.112
retrieving revision 1.113
diff -u -b -r1.112 -r1.113
--- server/asobj/Global.cpp 16 Apr 2008 07:27:08 -0000 1.112
+++ server/asobj/Global.cpp 16 Apr 2008 09:26:28 -0000 1.113
@@ -586,6 +586,11 @@
// SWF4
//-----------------------
+ // The Math class was available from SWF4. It
+ // is initialized on demand, and the native
+ // functions *must* be registered before this.
+ registerMathNative(*this);
+
init_member("trace", new builtin_function(as_global_trace));
if ( vm.getSWFVersion() < 5 ) goto extscan;
@@ -617,8 +622,10 @@
// to register ASnative functions
color_class_init(*this);
textformat_class_init(*this);
- math_class_init(*this);
+
date_class_init(*this);
+ ch->getGlobalNs()->stubPrototype(NSV::CLASS_DATE);
+ ch->getGlobalNs()->getClass(NSV::CLASS_DATE)->setDeclared();
if ( vm.getSWFVersion() < 6 ) goto extscan;
//-----------------------
Index: server/asobj/GMath.h
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/GMath.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- server/asobj/GMath.h 15 Apr 2008 07:55:23 -0000 1.20
+++ server/asobj/GMath.h 16 Apr 2008 09:26:28 -0000 1.21
@@ -55,6 +55,7 @@
// Math isn't a proper class, so doesn't need a constructor.
+void registerMathNative(as_object& global);
void math_class_init(as_object& global);
} // end of gnash namespace
Index: server/asobj/Math.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/Math.cpp,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -b -r1.31 -r1.32
--- server/asobj/Math.cpp 15 Apr 2008 10:27:17 -0000 1.31
+++ server/asobj/Math.cpp 16 Apr 2008 09:26:28 -0000 1.32
@@ -179,6 +179,30 @@
}
+void registerMathNative(as_object& proto)
+{
+ VM& vm = proto.getVM();
+
+ vm.registerNative(math_fabs, 200, 0);
+ vm.registerNative(math_min, 200, 1);
+ vm.registerNative(math_max, 200, 2);
+ vm.registerNative(math_sin, 200, 3);
+ vm.registerNative(math_cos, 200, 4);
+ vm.registerNative(math_atan2, 200, 5);
+ vm.registerNative(math_tan, 200, 6);
+ vm.registerNative(math_exp, 200, 7);
+ vm.registerNative(math_log, 200, 8);
+ vm.registerNative(math_sqrt, 200, 9);
+ vm.registerNative(math_round, 200, 10);
+ vm.registerNative(math_random, 200, 11);
+ vm.registerNative(math_floor, 200, 12);
+ vm.registerNative(math_ceil, 200, 13);
+ vm.registerNative(math_atan, 200, 14);
+ vm.registerNative(math_asin, 200, 15);
+ vm.registerNative(math_acos, 200, 16);
+ vm.registerNative(math_pow, 200, 17);
+}
+
void
attachMathInterface(as_object& proto)
{
@@ -202,41 +226,23 @@
VM& vm = proto.getVM();
- vm.registerNative(math_fabs, 200, 0);
proto.init_member("abs", vm.getNative(200, 0), flags);
- vm.registerNative(math_min, 200, 1);
proto.init_member("min", vm.getNative(200, 1), flags);
- vm.registerNative(math_max, 200, 2);
proto.init_member("max", vm.getNative(200, 2), flags);
- vm.registerNative(math_sin, 200, 3);
proto.init_member("sin", vm.getNative(200, 3), flags);
- vm.registerNative(math_cos, 200, 4);
proto.init_member("cos", vm.getNative(200, 4), flags);
- vm.registerNative(math_atan2, 200, 5);
proto.init_member("atan2", vm.getNative(200, 5), flags);
- vm.registerNative(math_tan, 200, 6);
proto.init_member("tan", vm.getNative(200, 6), flags);
- vm.registerNative(math_exp, 200, 7);
proto.init_member("exp", vm.getNative(200, 7), flags);
- vm.registerNative(math_log, 200, 8);
proto.init_member("log", vm.getNative(200, 8), flags);
- vm.registerNative(math_sqrt, 200, 9);
proto.init_member("sqrt", vm.getNative(200, 9), flags);
- vm.registerNative(math_round, 200, 10);
proto.init_member("round", vm.getNative(200, 10), flags);
- vm.registerNative(math_random, 200, 11);
proto.init_member("random", vm.getNative(200, 11), flags);
- vm.registerNative(math_floor, 200, 12);
proto.init_member("floor", vm.getNative(200, 12), flags);
- vm.registerNative(math_ceil, 200, 13);
proto.init_member("ceil", vm.getNative(200, 13), flags);
- vm.registerNative(math_atan, 200, 14);
proto.init_member("atan", vm.getNative(200, 14), flags);
- vm.registerNative(math_asin, 200, 15);
proto.init_member("asin", vm.getNative(200, 15), flags);
- vm.registerNative(math_acos, 200, 16);
proto.init_member("acos", vm.getNative(200, 16), flags);
- vm.registerNative(math_pow, 200, 17);
proto.init_member("pow", vm.getNative(200, 17), flags);
}
- [Gnash-commit] gnash ChangeLog server/asobj/Global.cpp server/...,
Benjamin Wolsey <=