[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/array.cpp server/array.h...
From: |
Chad Musick |
Subject: |
[Gnash-commit] gnash ChangeLog server/array.cpp server/array.h... |
Date: |
Tue, 20 Nov 2007 12:04:56 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Chad Musick <cmusick> 07/11/20 12:04:56
Modified files:
. : ChangeLog
server : array.cpp array.h
server/asobj : AsBroadcaster.cpp Color.cpp Global.cpp
LoadVars.cpp MovieClipLoader.cpp Object.cpp
Sound.cpp string.cpp xml.cpp xml.h
xmlsocket.cpp
Log message:
Reduce dependence on as_environment member of fn_call.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4899&r2=1.4900
http://cvs.savannah.gnu.org/viewcvs/gnash/server/array.cpp?cvsroot=gnash&r1=1.83&r2=1.84
http://cvs.savannah.gnu.org/viewcvs/gnash/server/array.h?cvsroot=gnash&r1=1.38&r2=1.39
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/AsBroadcaster.cpp?cvsroot=gnash&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Color.cpp?cvsroot=gnash&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Global.cpp?cvsroot=gnash&r1=1.76&r2=1.77
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/LoadVars.cpp?cvsroot=gnash&r1=1.32&r2=1.33
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/MovieClipLoader.cpp?cvsroot=gnash&r1=1.36&r2=1.37
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Object.cpp?cvsroot=gnash&r1=1.36&r2=1.37
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/Sound.cpp?cvsroot=gnash&r1=1.21&r2=1.22
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/string.cpp?cvsroot=gnash&r1=1.42&r2=1.43
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/xml.cpp?cvsroot=gnash&r1=1.54&r2=1.55
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/xml.h?cvsroot=gnash&r1=1.21&r2=1.22
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/xmlsocket.cpp?cvsroot=gnash&r1=1.38&r2=1.39
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4899
retrieving revision 1.4900
diff -u -b -r1.4899 -r1.4900
--- ChangeLog 20 Nov 2007 10:31:39 -0000 1.4899
+++ ChangeLog 20 Nov 2007 12:04:54 -0000 1.4900
@@ -1,5 +1,12 @@
2007-11-20 Chad Musick <address@hidden>
+ * server/array.cpp.h: Remove as_environment parameter from removeLast
+ * server/asobj/AsBroadcaster.cpp Color.cpp Global.cpp LoadVars.cpp
+ MovieClipLoader.cpp Object.cpp Sound.cpp string.cpp xml.h,.cpp
+ xmlsocket.cpp: Reduce dependence on as_environment.
+
+2007-11-20 Chad Musick <address@hidden>
+
* server/as_object.h,.cpp: Remove as_environment parameter from
callMethod methods.
* server/edit_text_character.cpp: Fix call to callMethod
Index: server/array.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/array.cpp,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -b -r1.83 -r1.84
--- server/array.cpp 20 Nov 2007 00:44:03 -0000 1.83
+++ server/array.cpp 20 Nov 2007 12:04:55 -0000 1.84
@@ -780,7 +780,7 @@
}
bool
-as_array_object::removeFirst(const as_value& v, as_environment&)
+as_array_object::removeFirst(const as_value& v)
{
for (iterator it = elements.begin(); it != elements.end(); ++it)
{
Index: server/array.h
===================================================================
RCS file: /sources/gnash/gnash/server/array.h,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -b -r1.38 -r1.39
--- server/array.h 16 Nov 2007 19:43:43 -0000 1.38
+++ server/array.h 20 Nov 2007 12:04:55 -0000 1.39
@@ -188,7 +188,7 @@
/// @param env
/// The environment to use when comparing (needed by
as_value::equals)
///
- bool removeFirst(const as_value& v, as_environment& env);
+ bool removeFirst(const as_value& v);
/// \brief
/// Substitute 'len' elements from 'start' with elements from
Index: server/asobj/AsBroadcaster.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/AsBroadcaster.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- server/asobj/AsBroadcaster.cpp 20 Nov 2007 10:31:39 -0000 1.10
+++ server/asobj/AsBroadcaster.cpp 20 Nov 2007 12:04:55 -0000 1.11
@@ -303,7 +303,7 @@
// Remove the first listener matching the new value
// See
http://www.senocular.com/flash/tutorials/listenersasbroadcaster/?page=2
// TODO: make this call as a normal (don't want to rely on
_listeners type at all)
- bool removed = listeners->removeFirst(listenerToRemove,
fn.env());
+ bool removed = listeners->removeFirst(listenerToRemove);
return as_value(removed);
}
Index: server/asobj/Color.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/Color.cpp,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -b -r1.18 -r1.19
--- server/asobj/Color.cpp 20 Nov 2007 00:44:04 -0000 1.18
+++ server/asobj/Color.cpp 20 Nov 2007 12:04:55 -0000 1.19
@@ -259,7 +259,7 @@
}
static inline void
-parseColorTransProp (as_object& obj, as_environment& env, string_table::key
key, float *target, bool scale)
+parseColorTransProp (as_object& obj, string_table::key key, float *target,
bool scale)
{
as_value tmp;
double d;
@@ -304,21 +304,20 @@
}
string_table& st = obj->getVM().getStringTable();
- as_environment& env = fn.env();
cxform newTrans = obj->getTransform();
// multipliers
- parseColorTransProp(*trans, env, st.find("ra"), &newTrans.m_[0][0],
true);
- parseColorTransProp(*trans, env, st.find("ga"), &newTrans.m_[1][0],
true);
- parseColorTransProp(*trans, env, st.find("ba"), &newTrans.m_[2][0],
true);
- parseColorTransProp(*trans, env, st.find("aa"), &newTrans.m_[3][0],
true);
+ parseColorTransProp(*trans, st.find("ra"), &newTrans.m_[0][0], true);
+ parseColorTransProp(*trans, st.find("ga"), &newTrans.m_[1][0], true);
+ parseColorTransProp(*trans, st.find("ba"), &newTrans.m_[2][0], true);
+ parseColorTransProp(*trans, st.find("aa"), &newTrans.m_[3][0], true);
// offsets
- parseColorTransProp(*trans, env, st.find("rb"), &newTrans.m_[0][1],
false);
- parseColorTransProp(*trans, env, st.find("gb"), &newTrans.m_[1][1],
false);
- parseColorTransProp(*trans, env, st.find("bb"), &newTrans.m_[2][1],
false);
- parseColorTransProp(*trans, env, st.find("ab"), &newTrans.m_[3][1],
false);
+ parseColorTransProp(*trans, st.find("rb"), &newTrans.m_[0][1], false);
+ parseColorTransProp(*trans, st.find("gb"), &newTrans.m_[1][1], false);
+ parseColorTransProp(*trans, st.find("bb"), &newTrans.m_[2][1], false);
+ parseColorTransProp(*trans, st.find("ab"), &newTrans.m_[3][1], false);
obj->setTransform(newTrans);
@@ -355,8 +354,7 @@
if ( ! sp )
{
// must be a target..
- as_environment& env = fn.env();
- character* ch = env.find_target(fn.arg(0).to_string());
+ character* ch =
fn.env().find_target(fn.arg(0).to_string());
if ( ch ) sp = ch->to_movie();
}
Index: server/asobj/Global.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/Global.cpp,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -b -r1.76 -r1.77
--- server/asobj/Global.cpp 20 Nov 2007 00:44:04 -0000 1.76
+++ server/asobj/Global.cpp 20 Nov 2007 12:04:55 -0000 1.77
@@ -17,7 +17,7 @@
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
//
-/* $Id: Global.cpp,v 1.76 2007/11/20 00:44:04 cmusick Exp $ */
+/* $Id: Global.cpp,v 1.77 2007/11/20 12:04:55 cmusick Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -304,9 +304,7 @@
static as_value
as_global_assetpropflags(const fn_call& fn)
{
- as_environment* env = &fn.env();
- int version = env->get_version();
-
+ int version = VM::get().getSWFVersion();
//log_msg(_("ASSetPropFlags called with %d args"), fn.nargs);
Index: server/asobj/LoadVars.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/LoadVars.cpp,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -b -r1.32 -r1.33
--- server/asobj/LoadVars.cpp 30 Oct 2007 18:55:43 -0000 1.32
+++ server/asobj/LoadVars.cpp 20 Nov 2007 12:04:55 -0000 1.33
@@ -65,7 +65,7 @@
/// @param env
/// Environment to use for event handlers calls
///
- LoadVars(as_environment* env);
+ LoadVars();
~LoadVars();
@@ -138,7 +138,7 @@
if ( _onData ) _onData->setReachable();
- if ( _env ) _env->markReachableResources();
+ _env.markReachableResources();
// Invoke generic as_object marker
markAsObjectReachable();
@@ -227,7 +227,7 @@
boost::intrusive_ptr<as_function> _onData;
- as_environment* _env;
+ as_environment _env;
size_t _bytesTotal;
@@ -259,10 +259,10 @@
unsigned int _loaded;
};
-LoadVars::LoadVars(as_environment* env)
+LoadVars::LoadVars()
:
as_object(getLoadVarsInterface()),
- _env(env),
+ _env(),
_bytesTotal(0),
_bytesLoaded(0),
_loadRequests(),
@@ -352,7 +352,7 @@
//log_msg("Calling _onData func");
// This would be the function calls "context"
// will likely be the same to all events
- fn_call fn(this, _env, 0, 0);
+ fn_call fn(this, &_env, 0, 0);
return _onData->call(fn);
}
@@ -366,7 +366,7 @@
//log_msg("Calling _onLoad func");
// This would be the function calls "context"
// will likely be the same to all events
- fn_call fn(this, _env, 0, 0);
+ fn_call fn(this, &_env, 0, 0);
return _onLoad->call(fn);
}
@@ -656,7 +656,7 @@
static as_value
loadvars_ctor(const fn_call& fn)
{
- boost::intrusive_ptr<as_object> obj = new LoadVars(&fn.env());
+ boost::intrusive_ptr<as_object> obj = new LoadVars();
return as_value(obj.get()); // will keep alive
}
Index: server/asobj/MovieClipLoader.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/MovieClipLoader.cpp,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -b -r1.36 -r1.37
--- server/asobj/MovieClipLoader.cpp 20 Nov 2007 10:31:39 -0000 1.36
+++ server/asobj/MovieClipLoader.cpp 20 Nov 2007 12:04:55 -0000 1.37
@@ -116,7 +116,7 @@
struct mcl *getProgress(as_object *ao);
/// MovieClip
- bool loadClip(const std::string& url, sprite_instance& target,
as_environment& env);
+ bool loadClip(const std::string& url, sprite_instance& target);
void unloadClip(void *);
@@ -193,7 +193,7 @@
bool
-MovieClipLoader::loadClip(const std::string& url_str, sprite_instance& target,
as_environment& env)
+MovieClipLoader::loadClip(const std::string& url_str, sprite_instance& target)
{
// Prepare function call for events...
//env.push(as_value(&target));
@@ -208,6 +208,7 @@
// Call the callback since we've started loading the file
// TODO: probably we should move this below, after
// the loading thread actually started
+ as_environment env;
dispatchEvent("onLoadStart", env, as_value(&target));
bool ret = target.loadMovie(url);
@@ -270,8 +271,6 @@
{
as_value val, method;
- as_environment& env = fn.env();
-
//log_msg(_("%s: nargs = %d"), __FUNCTION__, fn.nargs);
boost::intrusive_ptr<MovieClipLoader> ptr =
ensureType<MovieClipLoader>(fn.this_ptr);
@@ -309,7 +308,7 @@
str_url.c_str(), (void*)sprite);
#endif
- bool ret = ptr->loadClip(str_url, *sprite, fn.env());
+ bool ret = ptr->loadClip(str_url, *sprite);
return as_value(ret);
Index: server/asobj/Object.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/Object.cpp,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -b -r1.36 -r1.37
--- server/asobj/Object.cpp 20 Nov 2007 00:44:04 -0000 1.36
+++ server/asobj/Object.cpp 20 Nov 2007 12:04:55 -0000 1.37
@@ -17,7 +17,7 @@
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
//
-/* $Id: Object.cpp,v 1.36 2007/11/20 00:44:04 cmusick Exp $ */
+/* $Id: Object.cpp,v 1.37 2007/11/20 12:04:55 cmusick Exp $ */
#include "tu_config.h"
#include "Object.h"
@@ -296,7 +296,7 @@
// TODO: check to *which* definition should we ask the export
// this code uses the *relative* root of current environment's
target
- movie_definition* def =
fn.env().get_target()->get_root_movie()->get_movie_definition();
+ movie_definition* def = VM::get().getRoot().get_movie_definition();
boost::intrusive_ptr<resource> exp_res =
def->get_exported_resource(symbolid.c_str());
if ( ! exp_res )
{
Index: server/asobj/Sound.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/Sound.cpp,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -b -r1.21 -r1.22
--- server/asobj/Sound.cpp 20 Nov 2007 00:44:04 -0000 1.21
+++ server/asobj/Sound.cpp 20 Nov 2007 12:04:55 -0000 1.22
@@ -30,6 +30,7 @@
#include "GnashException.h"
#include "builtin_function.h"
#include "Object.h" // for getObjectInterface
+#include "VM.h"
#ifdef SOUND_GST
#include "SoundGst.h"
@@ -289,7 +290,7 @@
const std::string& name = fn.arg(0).to_string();
// check the import.
- movie_definition* def =
fn.env().get_target()->get_root_movie()->get_movie_definition();
+ movie_definition* def =
VM::get().getRoot().get_movie_definition();
assert(def);
boost::intrusive_ptr<resource> res =
def->get_exported_resource(name);
if (res == NULL)
@@ -343,7 +344,7 @@
}
// check the import.
- movie_definition* def =
fn.env().get_target()->get_root_movie()->get_movie_definition();
+ movie_definition* def = VM::get().getRoot().get_movie_definition();
assert(def);
boost::intrusive_ptr<resource> res = def->get_exported_resource(name);
if (res == NULL)
Index: server/asobj/string.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/string.cpp,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -b -r1.42 -r1.43
--- server/asobj/string.cpp 20 Nov 2007 00:44:04 -0000 1.42
+++ server/asobj/string.cpp 20 Nov 2007 12:04:55 -0000 1.43
@@ -16,7 +16,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-/* $Id: string.cpp,v 1.42 2007/11/20 00:44:04 cmusick Exp $ */
+/* $Id: string.cpp,v 1.43 2007/11/20 12:04:55 cmusick Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -228,7 +228,7 @@
boost::intrusive_ptr<as_array_object> array(new as_array_object());
- int SWFVersion = fn.env().get_version();
+ int SWFVersion = VM::get().getSWFVersion();
if (fn.nargs == 0)
{
@@ -342,8 +342,6 @@
ENSURE_FN_ARGS(1, 2, str);
- as_environment& env = fn.env();
-
int start = valid_index(str, fn.arg(0).to_int());
int num = str.size();
Index: server/asobj/xml.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/xml.cpp,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -b -r1.54 -r1.55
--- server/asobj/xml.cpp 20 Nov 2007 10:31:39 -0000 1.54
+++ server/asobj/xml.cpp 20 Nov 2007 12:04:56 -0000 1.55
@@ -17,7 +17,7 @@
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
//
-/* $Id: xml.cpp,v 1.54 2007/11/20 10:31:39 cmusick Exp $ */
+/* $Id: xml.cpp,v 1.55 2007/11/20 12:04:56 cmusick Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -402,7 +402,7 @@
}
void
-XML::queueLoad(std::auto_ptr<tu_file> str, as_environment& env)
+XML::queueLoad(std::auto_ptr<tu_file> str)
{
GNASH_REPORT_FUNCTION;
@@ -439,7 +439,7 @@
// This reads in an XML file from disk and parses into into a memory resident
// tree which can be walked through later.
bool
-XML::load(const URL& url, as_environment& env)
+XML::load(const URL& url)
{
GNASH_REPORT_FUNCTION;
@@ -455,7 +455,7 @@
}
log_msg(_("Loading XML file from url: '%s'"), url.str().c_str());
- queueLoad(str, env);
+ queueLoad(str);
return true;
}
@@ -539,7 +539,7 @@
// Set the argument to the function event handler based on whether the load
// was successful or failed.
- ret = xml_obj->load(url, fn.env());
+ ret = xml_obj->load(url);
rv = ret;
if (ret == false) {
@@ -599,7 +599,7 @@
{
if ( fn.arg(0).is_object() )
{
- boost::intrusive_ptr<as_object> obj = fn.env().top(0).to_object();
+ boost::intrusive_ptr<as_object> obj = fn.arg(0).to_object();
xml_obj = boost::dynamic_pointer_cast<XML>(obj);
if ( xml_obj )
{
@@ -782,7 +782,6 @@
string_table& st = vm.getStringTable();
string_table::key onLoadKey = st.find(PROPNAME("onLoad"));
string_table::key loadedKey = st.find("loaded");
- as_environment& env = fn.env();
as_object* thisPtr = fn.this_ptr.get();
assert(thisPtr);
Index: server/asobj/xml.h
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/xml.h,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -b -r1.21 -r1.22
--- server/asobj/xml.h 20 Oct 2007 10:47:14 -0000 1.21
+++ server/asobj/xml.h 20 Nov 2007 12:04:56 -0000 1.22
@@ -129,7 +129,7 @@
// The environment to use for calling event hadlers
// TODO: what about 'this' pointer?
//
- bool load(const URL& url, as_environment& env);
+ bool load(const URL& url);
// An event handler that returns a
bool onLoad();
@@ -227,7 +227,7 @@
void initParser();
/// Queue a load request from the given stream
- void queueLoad(std::auto_ptr<tu_file> str, as_environment& env);
+ void queueLoad(std::auto_ptr<tu_file> str);
//static void _xmlErrorHandler(void *ctx, const char* fmt, ...);
};
Index: server/asobj/xmlsocket.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/xmlsocket.cpp,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -b -r1.38 -r1.39
--- server/asobj/xmlsocket.cpp 20 Nov 2007 10:31:40 -0000 1.38
+++ server/asobj/xmlsocket.cpp 20 Nov 2007 12:04:56 -0000 1.39
@@ -106,7 +106,7 @@
/// The method will take care of polling from the
/// socket and invoking any onData handler.
///
- void checkForIncomingData(as_environment& env);
+ void checkForIncomingData();
XMLSocket obj;
@@ -455,7 +455,6 @@
// XMLSocket.connect() returned in these cases.
//
log_debug(_("XMLSocket.connect(): tring to call onConnect"));
- as_environment& env = fn.env();
ptr->callMethod(st.find(PROPNAME("onConnect")), success);
if ( success )
@@ -533,7 +532,7 @@
return as_value();
}
- ptr->checkForIncomingData(fn.env());
+ ptr->checkForIncomingData();
return as_value();
}
@@ -556,7 +555,6 @@
return as_value();
}
- as_environment& env = fn.env();
const std::string& xmlin = fn.arg(0).to_string();
if ( xmlin.empty() )
@@ -641,7 +639,7 @@
}
void
-xmlsocket_as_object::checkForIncomingData(as_environment& env)
+xmlsocket_as_object::checkForIncomingData()
{
assert(obj.connected());
@@ -676,8 +674,11 @@
#ifndef USE_DMALLOC
//dump_memory_stats(__FUNCTION__, __LINE__, "start");
#endif
+ as_environment env;
env.push(datain);
- call_method(as_value(onDataHandler.get()), &env, this, 1,
env.stack_size()-1);
+ fn_call call(this, &env, 1, env.stack_size() -
1);
+ onDataHandler->call(call);
+// call_method(as_value(onDataHandler.get()), &env, this, 1,
env.stack_size()-1);
#ifndef USE_DMALLOC
//dump_memory_stats(__FUNCTION__, __LINE__, "end");
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog server/array.cpp server/array.h...,
Chad Musick <=