[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/asobj/xmlsocket.cpp
From: |
Sandro Santilli |
Subject: |
[Gnash-commit] gnash ChangeLog server/asobj/xmlsocket.cpp |
Date: |
Wed, 10 Oct 2007 14:53:17 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 07/10/10 14:53:17
Modified files:
. : ChangeLog
server/asobj : xmlsocket.cpp
Log message:
* server/asobj/xmlsocket.cpp: don't use non-configured
as_environment
for user-defined event handlers invocation.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.4589&r2=1.4590
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/xmlsocket.cpp?cvsroot=gnash&r1=1.34&r2=1.35
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.4589
retrieving revision 1.4590
diff -u -b -r1.4589 -r1.4590
--- ChangeLog 10 Oct 2007 14:07:57 -0000 1.4589
+++ ChangeLog 10 Oct 2007 14:53:16 -0000 1.4590
@@ -1,3 +1,8 @@
+2007-10-10 Sandro Santilli <address@hidden>
+
+ * server/asobj/xmlsocket.cpp: don't use non-configured as_environment
+ for user-defined event handlers invocation.
+
2007-10-10 Benjamin Wolsey <address@hidden>
* server/asobj/Key.{h,cpp}: change is_key_down() to take SWF keycode
Index: server/asobj/xmlsocket.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/xmlsocket.cpp,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -b -r1.34 -r1.35
--- server/asobj/xmlsocket.cpp 19 Sep 2007 14:20:50 -0000 1.34
+++ server/asobj/xmlsocket.cpp 10 Oct 2007 14:53:17 -0000 1.35
@@ -444,6 +444,9 @@
bool success = ptr->obj.connect(host.c_str(), port);
+ VM& vm = VM::get();
+ string_table& st = vm.getStringTable();
+
// Actually, if first-stage connection was successful, we
// should NOT invoke onConnect(true) here, but postpone
// that event call to a second-stage connection checking,
@@ -451,14 +454,9 @@
// confirm this is that onConnect is invoked *after*
// XMLSocket.connect() returned in these cases.
//
- boost::intrusive_ptr<as_function> handler =
ptr->getEventHandler("onConnect");
- if ( handler )
- {
- log_msg(_("XMLSocket.connect(): calling onConnect"));
- as_environment env;
- env.push(success);
- val = call_method(handler.get(), &env, ptr.get(), 1,
env.stack_size()-1);
- }
+ log_debug(_("XMLSocket.connect(): tring to call onConnect"));
+ as_environment& env = fn.env();
+ ptr->callMethod(st.find(PROPNAME("onConnect")), env, success);
if ( success )
{
@@ -468,7 +466,7 @@
boost::intrusive_ptr<builtin_function> ondata_handler = new
builtin_function(&xmlsocket_inputChecker, NULL);
unsigned interval = 50; // just make sure it's expired at every frame
iteration (20 FPS used here)
timer->setInterval(*ondata_handler, interval,
boost::dynamic_pointer_cast<as_object>(ptr));
- VM::get().getRoot().add_interval_timer(timer, true);
+ vm.getRoot().add_interval_timer(timer, true);
log_msg(_("Timer set"));
}
@@ -550,15 +548,6 @@
boost::intrusive_ptr<xmlsocket_as_object> ptr =
ensureType<xmlsocket_as_object>(fn.this_ptr);
- boost::intrusive_ptr<as_function> onXMLEvent =
ptr->getEventHandler("onXML");
- if ( ! onXMLEvent )
- {
- log_msg(_("Builtin XMLSocket.onData doing nothing as no "
- "onXML event is defined on XMLSocket %p"),
- (void*)ptr.get());
- return as_value();
- }
-
if ( fn.nargs < 1 )
{
IF_VERBOSE_ASCODING_ERRORS(
@@ -579,9 +568,13 @@
}
boost::intrusive_ptr<as_object> xml = new XML(xmlin);
+ as_value arg(xml.get());
+
+ VM& vm = VM::get();
+ string_table& st = vm.getStringTable();
+
+ ptr->callMethod(st.find(PROPNAME("onXML")), env, arg);
- env.push(xml);
- call_method(as_value(onXMLEvent.get()), &env, ptr.get(), 1,
env.stack_size()-1);
return as_value();
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog server/asobj/xmlsocket.cpp,
Sandro Santilli <=