aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Servers
diff options
context:
space:
mode:
authorHomer Horwitz2008-11-01 22:09:48 +0000
committerHomer Horwitz2008-11-01 22:09:48 +0000
commit38e8853e5761d09a7e8f580dd277d9b99b834696 (patch)
tree653fe4c9075a03c05a4b5782f7309afa83062e5c /OpenSim/Framework/Servers
parent* minor: Remove mono compiler warning (diff)
downloadopensim-SC-38e8853e5761d09a7e8f580dd277d9b99b834696.zip
opensim-SC-38e8853e5761d09a7e8f580dd277d9b99b834696.tar.gz
opensim-SC-38e8853e5761d09a7e8f580dd277d9b99b834696.tar.bz2
opensim-SC-38e8853e5761d09a7e8f580dd277d9b99b834696.tar.xz
Megapatch that fixes/adds: friend offer/deny/accept, friendship termination,
on-/offline updates, calling cards for friends. This adds methods in the DB layer and changes the MessagingServer, so a full update (incl. UGAIM) is necessary to get it working. Older regions shouldn't break, nor should older UGAIM break newer regions, but friends/presence will only work with all concerned parts (UGAIM, source region and destination region) at this revision (or later). I added the DB code for MSSQL, too, but couldn't test that. BEWARE: May contain bugs.
Diffstat (limited to 'OpenSim/Framework/Servers')
-rw-r--r--OpenSim/Framework/Servers/BaseHttpServer.cs13
1 files changed, 12 insertions, 1 deletions
diff --git a/OpenSim/Framework/Servers/BaseHttpServer.cs b/OpenSim/Framework/Servers/BaseHttpServer.cs
index 871ea57..98b44db 100644
--- a/OpenSim/Framework/Servers/BaseHttpServer.cs
+++ b/OpenSim/Framework/Servers/BaseHttpServer.cs
@@ -586,7 +586,18 @@ namespace OpenSim.Framework.Servers
586 XmlRpcMethod method; 586 XmlRpcMethod method;
587 if (m_rpcHandlers.TryGetValue(methodName, out method)) 587 if (m_rpcHandlers.TryGetValue(methodName, out method))
588 { 588 {
589 xmlRpcResponse = method(xmlRprcRequest); 589 try
590 {
591 xmlRpcResponse = method(xmlRprcRequest);
592 }
593 catch(Exception e)
594 {
595 // if the registered XmlRpc method threw an exception, we pass a fault-code along
596 xmlRpcResponse = new XmlRpcResponse();
597 // Code probably set in accordance with http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php
598 xmlRpcResponse.SetFault(-32603, String.Format("Requested method [{0}] threw exception: {1}",
599 methodName, e.Message));
600 }
590 // if the method wasn't found, we can't determine KeepAlive state anyway, so lets do it only here 601 // if the method wasn't found, we can't determine KeepAlive state anyway, so lets do it only here
591 response.KeepAlive = m_rpcHandlersKeepAlive[methodName]; 602 response.KeepAlive = m_rpcHandlersKeepAlive[methodName];
592 } 603 }