* Fixes issue #4329 "llDialog fails silently" by updating OpenMetaverse.dll

* Prints a warning for any future packet splitting failures
0.6.8-post-fixes
John Hurliman 2009-10-30 00:08:41 -07:00
parent aecaa51063
commit a05c67bebb
6 changed files with 33 additions and 27 deletions

View File

@ -4329,11 +4329,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
/// </summary>
protected virtual void RegisterLocalPacketHandlers()
{
AddLocalPacketHandler(PacketType.LogoutRequest, Logout);
AddLocalPacketHandler(PacketType.LogoutRequest, HandleLogout);
AddLocalPacketHandler(PacketType.AgentUpdate, HandleAgentUpdate);
AddLocalPacketHandler(PacketType.ViewerEffect, HandleViewerEffect);
AddLocalPacketHandler(PacketType.AgentCachedTexture, AgentTextureCached);
AddLocalPacketHandler(PacketType.MultipleObjectUpdate, MultipleObjUpdate);
AddLocalPacketHandler(PacketType.AgentCachedTexture, HandleAgentTextureCached);
AddLocalPacketHandler(PacketType.MultipleObjectUpdate, HandleMultipleObjUpdate);
AddLocalPacketHandler(PacketType.MoneyTransferRequest, HandleMoneyTransferRequest);
AddLocalPacketHandler(PacketType.ParcelBuy, HandleParcelBuyRequest);
AddLocalPacketHandler(PacketType.UUIDGroupNameRequest, HandleUUIDGroupNameRequest);
@ -4602,7 +4602,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
/// <param name="client"></param>
/// <param name="packet"></param>
/// <returns></returns>
protected virtual bool Logout(IClientAPI client, Packet packet)
protected virtual bool HandleLogout(IClientAPI client, Packet packet)
{
if (packet.Type == PacketType.LogoutRequest)
{
@ -4640,7 +4640,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
/// <param name="simclient"></param>
/// <param name="packet"></param>
/// <returns></returns>
protected bool AgentTextureCached(IClientAPI simclient, Packet packet)
protected bool HandleAgentTextureCached(IClientAPI simclient, Packet packet)
{
//m_log.Debug("texture cached: " + packet.ToString());
AgentCachedTexturePacket cachedtex = (AgentCachedTexturePacket)packet;
@ -4670,7 +4670,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
return true;
}
protected bool MultipleObjUpdate(IClientAPI simClient, Packet packet)
protected bool HandleMultipleObjUpdate(IClientAPI simClient, Packet packet)
{
MultipleObjectUpdatePacket multipleupdate = (MultipleObjectUpdatePacket)packet;
if (multipleupdate.AgentData.SessionID != SessionId) return false;

View File

@ -256,8 +256,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
byte[][] datas = packet.ToBytesMultiple();
int packetCount = datas.Length;
//if (packetCount > 1)
// m_log.Debug("[LLUDPSERVER]: Split " + packet.Type + " packet into " + packetCount + " packets");
if (packetCount < 1)
m_log.Error("[LLUDPSERVER]: Failed to split " + packet.Type + " with estimated length " + packet.Length);
for (int i = 0; i < packetCount; i++)
{
@ -295,8 +295,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
byte[][] datas = packet.ToBytesMultiple();
int packetCount = datas.Length;
//if (packetCount > 1)
// m_log.Debug("[LLUDPSERVER]: Split " + packet.Type + " packet into " + packetCount + " packets");
if (packetCount < 1)
m_log.Error("[LLUDPSERVER]: Failed to split " + packet.Type + " with estimated length " + packet.Length);
for (int i = 0; i < packetCount; i++)
{

View File

@ -130,9 +130,9 @@ namespace OpenSim.TestSuite
public void startup()
{
client.Settings.LOGIN_SERVER = loginURI;
client.Network.OnConnected += new NetworkManager.ConnectedCallback(this.Network_OnConnected);
client.Network.OnSimConnected += new NetworkManager.SimConnectedCallback(this.Network_OnConnected);
client.Network.OnDisconnected += new NetworkManager.DisconnectedCallback(this.Network_OnDisconnected);
client.Network.LoginProgress += this.Network_LoginProgress;
client.Network.SimConnected += this.Network_SimConnected;
client.Network.Disconnected += this.Network_OnDisconnected;
if (client.Network.Login(firstname, lastname, password, "pCampBot", "Your name"))
{
@ -155,19 +155,22 @@ namespace OpenSim.TestSuite
}
}
public void Network_OnConnected(object sender)
public void Network_LoginProgress(object sender, LoginProgressEventArgs args)
{
if (args.Status == LoginStatus.Success)
{
if (OnConnected != null)
{
OnConnected(this, EventType.CONNECTED);
}
}
}
public void Simulator_Connected(object sender)
public void Network_SimConnected(object sender, SimConnectedEventArgs args)
{
}
public void Network_OnDisconnected(NetworkManager.DisconnectType reason, string message)
public void Network_OnDisconnected(object sender, DisconnectedEventArgs args)
{
if (OnDisconnected != null)
{

View File

@ -151,9 +151,9 @@ namespace pCampBot
client.Throttle.Texture = 100000;
client.Throttle.Wind = 100000;
client.Throttle.Total = 400000;
client.Network.OnConnected += new NetworkManager.ConnectedCallback(this.Network_OnConnected);
client.Network.OnSimConnected += new NetworkManager.SimConnectedCallback(this.Network_OnConnected);
client.Network.OnDisconnected += new NetworkManager.DisconnectedCallback(this.Network_OnDisconnected);
client.Network.LoginProgress += this.Network_LoginProgress;
client.Network.SimConnected += this.Network_SimConnected;
client.Network.Disconnected += this.Network_OnDisconnected;
client.Objects.ObjectUpdate += Objects_NewPrim;
//client.Assets.OnAssetReceived += Asset_ReceivedCallback;
if (client.Network.Login(firstname, lastname, password, "pCampBot", "Your name"))
@ -349,19 +349,22 @@ namespace pCampBot
return clothfolder;
}
public void Network_OnConnected(object sender)
public void Network_LoginProgress(object sender, LoginProgressEventArgs args)
{
if (args.Status == LoginStatus.Success)
{
if (OnConnected != null)
{
OnConnected(this, EventType.CONNECTED);
}
}
}
public void Simulator_Connected(object sender)
public void Network_SimConnected(object sender, SimConnectedEventArgs args)
{
}
public void Network_OnDisconnected(NetworkManager.DisconnectType reason, string message)
public void Network_OnDisconnected(object sender, DisconnectedEventArgs args)
{
if (OnDisconnected != null)
{

Binary file not shown.

View File

@ -42,7 +42,7 @@
; SmartThreadPool is reported to work well on Mono/Linux, but
; UnsafeQueueUserWorkItem has been benchmarked with better
; performance on .NET/Windows
;async_call_method = SmartThreadPool
async_call_method = SmartThreadPool
; There are several operations on large collections (such as
; the current avatar list) that can be run synchronously or