Bug fix in Offline IM for inventory transfers. The items were being placed twice in the receiver's inventory.

integration
Diva Canto 2012-11-27 21:10:58 -08:00
parent a82f699f43
commit 92a766e8cb
1 changed files with 15 additions and 11 deletions

View File

@ -186,17 +186,21 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
foreach (GridInstantMessage im in msglist)
{
// client.SendInstantMessage(im);
// Send through scene event manager so all modules get a chance
// to look at this message before it gets delivered.
//
// Needed for proper state management for stored group
// invitations
//
Scene s = FindScene(client.AgentId);
if (s != null)
s.EventManager.TriggerIncomingInstantMessage(im);
if (im.dialog == (byte)InstantMessageDialog.InventoryOffered)
// send it directly or else the item will be given twice
client.SendInstantMessage(im);
else
{
// Send through scene event manager so all modules get a chance
// to look at this message before it gets delivered.
//
// Needed for proper state management for stored group
// invitations
//
Scene s = FindScene(client.AgentId);
if (s != null)
s.EventManager.TriggerIncomingInstantMessage(im);
}
}
}
}