[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/PropertyList.h server/as...
From: |
Sandro Santilli |
Subject: |
[Gnash-commit] gnash ChangeLog server/PropertyList.h server/as... |
Date: |
Fri, 24 Nov 2006 15:41:15 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 06/11/24 15:41:14
Modified files:
. : ChangeLog
server : PropertyList.h as_object.cpp
server/asobj : Date.cpp
Log message:
* server/asobj/Date.cpp: use proper case when registering class
interface.
* server/PropertyList.h: be case sensitive !
* server/as_object.cpp (set_member_default, get_member_default):
convert memer names to lowercase when VM is targetted at
SWF version < 7.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.1744&r2=1.1745
http://cvs.savannah.gnu.org/viewcvs/gnash/server/PropertyList.h?cvsroot=gnash&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/gnash/server/as_object.cpp?cvsroot=gnash&r1=1.16&r2=1.17
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Date.cpp?cvsroot=gnash&r1=1.4&r2=1.5
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.1744
retrieving revision 1.1745
diff -u -b -r1.1744 -r1.1745
--- ChangeLog 24 Nov 2006 14:50:30 -0000 1.1744
+++ ChangeLog 24 Nov 2006 15:41:14 -0000 1.1745
@@ -1,5 +1,14 @@
2006-11-24 Sandro Santilli <address@hidden>
+ * server/asobj/Date.cpp: use proper case when registering class
+ interface.
+ * server/PropertyList.h: be case sensitive !
+ * server/as_object.cpp (set_member_default, get_member_default):
+ convert memer names to lowercase when VM is targetted at
+ SWF version < 7.
+
+2006-11-24 Sandro Santilli <address@hidden>
+
* server: as_environment.cpp, as_function.cpp, as_function.h,
impl.cpp, swf_function.cpp, asobj/GMath.h, asobj/Global.cpp,
asobj/Global.h, asobj/Key.cpp, asobj/Key.h, asobj/Makefile.am,
Index: server/PropertyList.h
===================================================================
RCS file: /sources/gnash/gnash/server/PropertyList.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- server/PropertyList.h 3 Nov 2006 08:39:25 -0000 1.6
+++ server/PropertyList.h 24 Nov 2006 15:41:14 -0000 1.7
@@ -26,9 +26,6 @@
#include <map>
#include <string> // for use within map
-
-#include "StringPredicates.h" // for case-insensitive comparison
-
#include <cassert> // for inlines
#include <cctype> // for toupper
@@ -63,7 +60,7 @@
/// overhead and with manager ownerhips. See:
/// http://www.boost.org/libs/ptr_container/doc/ptr_container.html
///
- typedef std::map<std::string, Property*, StringNoCaseLessThen>
container;
+ typedef std::map<std::string, Property*> container;
typedef container::iterator iterator;
typedef container::const_iterator const_iterator;
typedef container::reverse_iterator reverse_iterator;
@@ -110,7 +107,7 @@
/// will be invoked using this instance's _owner as 'this' pointer.
///
/// @param key
- /// name of the property. search will be case-insensitive
+ /// Name of the property. Search is case-*sensitive*
///
/// @param value
/// a reference to the as_value to which a found property
@@ -142,7 +139,7 @@
/// If the property is not found a SimpleProperty will be created.
///
/// @param key
- /// name of the property. search will be case-insensitive
+ /// Name of the property. Search is case-*sensitive*
///
/// @param value
/// a const reference to the as_value to use for setting
@@ -166,7 +163,7 @@
/// Get a property, if existing
//
/// @param key
- /// name of the property. search will be case-insensitive
+ /// Name of the property. Search is case-*sensitive*
///
/// @return a Property or NULL, if no such property exists
/// ownership of returned Propery is kept by the PropertyList,
@@ -179,7 +176,7 @@
/// (or should we allow override ?)
//
/// @param key
- /// name of the property. search will be case-insensitive
+ /// Name of the property. Search is case-*sensitive*
///
/// @param getter
/// A function to invoke when this property value is requested.
@@ -198,7 +195,7 @@
/// Set the flags of a property.
//
/// @param key
- /// name of the property. search will be case-insensitive
+ /// Name of the property. Search is case-*sensitive*
///
/// @param setTrue
/// the set of flags to set
Index: server/as_object.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/as_object.cpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- server/as_object.cpp 24 Nov 2006 13:33:21 -0000 1.16
+++ server/as_object.cpp 24 Nov 2006 15:41:14 -0000 1.17
@@ -31,6 +31,8 @@
#include "VM.h"
#include <set>
+#include <string>
+#include <boost/algorithm/string/case_conv.hpp>
namespace gnash {
@@ -50,6 +52,16 @@
// temp hack, should really update this method's interface instead
std::string name = namei.c_str();
+ // TODO: keep a refenrence in the class definition
+ // rather then caling ::get() everytime ?
+ VM& vm = VM::get();
+ if ( vm.getSWFVersion() < 7 )
+ {
+ boost::to_lower(name, vm.getLocale());
+ }
+
+ //log_msg("Getting member %s (SWF version:%d)", name.c_str(),
vm.getSWFVersion());
+
// TODO: inspect wheter it is possible to make __proto__ a
// getter/setter property instead, to take this into account
//
@@ -137,15 +149,26 @@
void
as_object::set_member_default(const tu_stringi& name, const as_value& val )
{
+
+ std::string key = name.c_str();
+
+ // TODO: keep a refenrence in the class definition
+ // rather then caling ::get() everytime ?
+ VM& vm = VM::get();
+ if ( vm.getSWFVersion() < 7 )
+ {
+ boost::to_lower(key, vm.getLocale());
+ }
+
+ //log_msg("Setting member %s (SWF version:%d)", key.c_str(),
vm.getSWFVersion());
+
// TODO: make __proto__ a getter/setter ?
- if (name == "__proto__")
+ if (key == "__proto__")
{
set_prototype(val.to_object());
return;
}
- std::string key = name.c_str();
-
// found a getter/setter property in the inheritance chain
// so set that and return
Property* prop = findGetterSetter(key);
Index: server/asobj/Date.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/Date.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- server/asobj/Date.cpp 29 Oct 2006 18:34:12 -0000 1.4
+++ server/asobj/Date.cpp 24 Nov 2006 15:41:14 -0000 1.5
@@ -296,45 +296,49 @@
void
date_new(const fn_call& fn)
{
+ // TODO: just make date_as_object constructor
+ // register the exported interface, don't
+ // replicate all functions !!
+
date_as_object *date_obj = new date_as_object;
- date_obj->set_member("getdate", &date_getdate);
- date_obj->set_member("getday", &date_getday);
- date_obj->set_member("getfullyear", &date_getfullyear);
- date_obj->set_member("gethours", &date_gethours);
- date_obj->set_member("getmilliseconds", &date_getmilliseconds);
- date_obj->set_member("getminutes", &date_getminutes);
- date_obj->set_member("getmonth", &date_getmonth);
- date_obj->set_member("getseconds", &date_getseconds);
- date_obj->set_member("gettime", &date_gettime);
- date_obj->set_member("gettimezoneoffset", &date_gettimezoneoffset);
- date_obj->set_member("getutcdate", &date_getutcdate);
- date_obj->set_member("getutcday", &date_getutcday);
- date_obj->set_member("getutcfullyear", &date_getutcfullyear);
- date_obj->set_member("getutchours", &date_getutchours);
- date_obj->set_member("getutcmilliseconds", &date_getutcmilliseconds);
- date_obj->set_member("getutcminutes", &date_getutcminutes);
- date_obj->set_member("getutcmonth", &date_getutcmonth);
- date_obj->set_member("getutcseconds", &date_getutcseconds);
- date_obj->set_member("getyear", &date_getyear);
- date_obj->set_member("setdate", &date_setdate);
- date_obj->set_member("setfullyear", &date_setfullyear);
- date_obj->set_member("sethours", &date_sethours);
- date_obj->set_member("setmilliseconds", &date_setmilliseconds);
- date_obj->set_member("setminutes", &date_setminutes);
- date_obj->set_member("setmonth", &date_setmonth);
- date_obj->set_member("setseconds", &date_setseconds);
- date_obj->set_member("settime", &date_settime);
- date_obj->set_member("setutcdate", &date_setutcdate);
- date_obj->set_member("setutcfullyear", &date_setutcfullyear);
- date_obj->set_member("setutchours", &date_setutchours);
- date_obj->set_member("setutcmilliseconds", &date_setutcmilliseconds);
- date_obj->set_member("setutcminutes", &date_setutcminutes);
- date_obj->set_member("setutcmonth", &date_setutcmonth);
- date_obj->set_member("setutcseconds", &date_setutcseconds);
- date_obj->set_member("setyear", &date_setyear);
- date_obj->set_member("tostring", &date_tostring);
- date_obj->set_member("utc", &date_utc);
+ date_obj->set_member("getDate", &date_getdate);
+ date_obj->set_member("getDay", &date_getday);
+ date_obj->set_member("getFullYear", &date_getfullyear);
+ date_obj->set_member("getHours", &date_gethours);
+ date_obj->set_member("getMilliseconds", &date_getmilliseconds);
+ date_obj->set_member("getMinutes", &date_getminutes);
+ date_obj->set_member("getMonth", &date_getmonth);
+ date_obj->set_member("getSeconds", &date_getseconds);
+ date_obj->set_member("getTime", &date_gettime);
+ date_obj->set_member("getTimezoneOffset", &date_gettimezoneoffset);
+ date_obj->set_member("getUTCDate", &date_getutcdate);
+ date_obj->set_member("getUTCDay", &date_getutcday);
+ date_obj->set_member("getUTCFullYear", &date_getutcfullyear);
+ date_obj->set_member("getUTCHours", &date_getutchours);
+ date_obj->set_member("getUTCMilliseconds", &date_getutcmilliseconds);
+ date_obj->set_member("getUTCMinutes", &date_getutcminutes);
+ date_obj->set_member("getUTCMonth", &date_getutcmonth);
+ date_obj->set_member("getUTCSeconds", &date_getutcseconds);
+ date_obj->set_member("getYear", &date_getyear);
+ date_obj->set_member("setDate", &date_setdate);
+ date_obj->set_member("setFullYear", &date_setfullyear);
+ date_obj->set_member("setHours", &date_sethours);
+ date_obj->set_member("setMilliseconds", &date_setmilliseconds);
+ date_obj->set_member("setMinutes", &date_setminutes);
+ date_obj->set_member("setMonth", &date_setmonth);
+ date_obj->set_member("setSeconds", &date_setseconds);
+ date_obj->set_member("setTime", &date_settime);
+ date_obj->set_member("setUTCDate", &date_setutcdate);
+ date_obj->set_member("setUTCFullYear", &date_setutcfullyear);
+ date_obj->set_member("setUTCHours", &date_setutchours);
+ date_obj->set_member("setUTCMilliseconds", &date_setutcmilliseconds);
+ date_obj->set_member("setUTCMinutes", &date_setutcminutes);
+ date_obj->set_member("setUTCMonth", &date_setutcmonth);
+ date_obj->set_member("setUTCSeconds", &date_setutcseconds);
+ date_obj->set_member("setYear", &date_setyear);
+ date_obj->set_member("toString", &date_tostring);
+ date_obj->set_member("UTC", &date_utc);
struct tm *ti;
if (fn.nargs == 0) {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog server/PropertyList.h server/as...,
Sandro Santilli <=