Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
commit
5559422d32
|
@ -496,6 +496,11 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
|
|
||||||
if (item != null)
|
if (item != null)
|
||||||
{
|
{
|
||||||
|
if (item.ID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 1");
|
||||||
|
}
|
||||||
|
|
||||||
AssetBase rezAsset = m_Scene.AssetService.Get(item.AssetID.ToString());
|
AssetBase rezAsset = m_Scene.AssetService.Get(item.AssetID.ToString());
|
||||||
|
|
||||||
if (rezAsset != null)
|
if (rezAsset != null)
|
||||||
|
@ -518,11 +523,19 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
itemId = item.ID;
|
itemId = item.ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (item.ID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 2");
|
||||||
|
}
|
||||||
|
|
||||||
string xmlData = Utils.BytesToString(rezAsset.Data);
|
string xmlData = Utils.BytesToString(rezAsset.Data);
|
||||||
SceneObjectGroup group
|
SceneObjectGroup group
|
||||||
= SceneObjectSerializer.FromOriginalXmlFormat(itemId, xmlData);
|
= SceneObjectSerializer.FromOriginalXmlFormat(itemId, xmlData);
|
||||||
Vector3 storedPosition = group.AbsolutePosition;
|
Vector3 storedPosition = group.AbsolutePosition;
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 3");
|
||||||
|
}
|
||||||
group.RootPart.FromFolderID = item.Folder;
|
group.RootPart.FromFolderID = item.Folder;
|
||||||
|
|
||||||
// If it's rezzed in world, select it. Much easier to
|
// If it's rezzed in world, select it. Much easier to
|
||||||
|
@ -548,9 +561,15 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
remoteClient.SendBulkUpdateInventory(item);
|
remoteClient.SendBulkUpdateInventory(item);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 4");
|
||||||
|
}
|
||||||
group.ResetIDs();
|
group.ResetIDs();
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 5");
|
||||||
|
}
|
||||||
if (attachment)
|
if (attachment)
|
||||||
{
|
{
|
||||||
group.RootPart.ObjectFlags |= (uint)PrimFlags.Phantom;
|
group.RootPart.ObjectFlags |= (uint)PrimFlags.Phantom;
|
||||||
|
@ -582,7 +601,10 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
{
|
{
|
||||||
group.SetFromItemID(itemID);
|
group.SetFromItemID(itemID);
|
||||||
}
|
}
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 6");
|
||||||
|
}
|
||||||
SceneObjectPart rootPart = null;
|
SceneObjectPart rootPart = null;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -597,7 +619,10 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
|
|
||||||
m_log.Error("[AGENT INVENTORY]: Error rezzing ItemID: " + itemID + " object has no rootpart." + isAttachment);
|
m_log.Error("[AGENT INVENTORY]: Error rezzing ItemID: " + itemID + " object has no rootpart." + isAttachment);
|
||||||
}
|
}
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 7");
|
||||||
|
}
|
||||||
// Since renaming the item in the inventory does not affect the name stored
|
// Since renaming the item in the inventory does not affect the name stored
|
||||||
// in the serialization, transfer the correct name from the inventory to the
|
// in the serialization, transfer the correct name from the inventory to the
|
||||||
// object itself before we rez.
|
// object itself before we rez.
|
||||||
|
@ -625,7 +650,10 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
group.ApplyNextOwnerPermissions();
|
group.ApplyNextOwnerPermissions();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 8");
|
||||||
|
}
|
||||||
foreach (SceneObjectPart part in partList)
|
foreach (SceneObjectPart part in partList)
|
||||||
{
|
{
|
||||||
if ((part.OwnerID != item.Owner) || (item.CurrentPermissions & 16) != 0)
|
if ((part.OwnerID != item.Owner) || (item.CurrentPermissions & 16) != 0)
|
||||||
|
@ -638,9 +666,15 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
part.EveryoneMask = item.EveryOnePermissions;
|
part.EveryoneMask = item.EveryOnePermissions;
|
||||||
part.NextOwnerMask = item.NextPermissions;
|
part.NextOwnerMask = item.NextPermissions;
|
||||||
}
|
}
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 9");
|
||||||
|
}
|
||||||
rootPart.TrimPermissions();
|
rootPart.TrimPermissions();
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 10");
|
||||||
|
}
|
||||||
if (!attachment)
|
if (!attachment)
|
||||||
{
|
{
|
||||||
if (group.RootPart.Shape.PCode == (byte)PCode.Prim)
|
if (group.RootPart.Shape.PCode == (byte)PCode.Prim)
|
||||||
|
@ -674,8 +708,11 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (group.UUID == UUID.Zero)
|
||||||
return rootPart.ParentGroup;
|
{
|
||||||
|
m_log.Debug("[InventoryAccessModule]: Inventory object has UUID.Zero! Position 11");
|
||||||
|
}
|
||||||
|
return group;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue