Add an overload to OutPacket as per jhurliman. Switch hacky workaround

for InventoryDescendents to the proper way
0.6.8-post-fixes
Melanie 2009-11-04 04:36:19 +00:00
parent cfcb5faa4e
commit 535f4597c1
1 changed files with 15 additions and 5 deletions

View File

@ -1306,14 +1306,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
currentPacket.ItemData[itemsSent % MAX_ITEMS_PER_PACKET] = CreateItemDataBlock(items[itemsSent++]); currentPacket.ItemData[itemsSent % MAX_ITEMS_PER_PACKET] = CreateItemDataBlock(items[itemsSent++]);
else else
{ {
OutPacket(currentPacket, ThrottleOutPacketType.Asset); OutPacket(currentPacket, ThrottleOutPacketType.Asset, false);
currentPacket = null; currentPacket = null;
} }
} }
if (currentPacket != null) if (currentPacket != null)
OutPacket(currentPacket, ThrottleOutPacketType.Asset); OutPacket(currentPacket, ThrottleOutPacketType.Asset, false);
} }
private InventoryDescendentsPacket.FolderDataBlock CreateFolderDataBlock(InventoryFolderBase folder) private InventoryDescendentsPacket.FolderDataBlock CreateFolderDataBlock(InventoryFolderBase folder)
@ -1415,9 +1415,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
descend.AgentData.Version = version; descend.AgentData.Version = version;
descend.AgentData.Descendents = descendents; descend.AgentData.Descendents = descendents;
// Disable multiple packets
descend.HasVariableBlocks = false;
if (folders > 0) if (folders > 0)
descend.FolderData = new InventoryDescendentsPacket.FolderDataBlock[folders]; descend.FolderData = new InventoryDescendentsPacket.FolderDataBlock[folders];
else else
@ -4909,6 +4906,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP
m_udpServer.SendPacket(m_udpClient, packet, throttlePacketType, true); m_udpServer.SendPacket(m_udpClient, packet, throttlePacketType, true);
} }
/// <summary>
/// This is the starting point for sending a simulator packet out to the client
/// </summary>
/// <param name="packet">Packet to send</param>
/// <param name="throttlePacketType">Throttling category for the packet</param>
/// <param name="doAutomaticSplitting">True to automatically split oversized
/// packets (the default), or false to disable splitting if the calling code
/// handles splitting manually</param>
protected void OutPacket(Packet packet, ThrottleOutPacketType throttlePacketType, bool doAutomaticSplitting)
{
m_udpServer.SendPacket(m_udpClient, packet, throttlePacketType, doAutomaticSplitting);
}
public bool AddMoney(int debit) public bool AddMoney(int debit)
{ {
if (m_moneyBalance + debit >= 0) if (m_moneyBalance + debit >= 0)