OOps my bad, always do deep copy, let viewers do v1 v2 fixes

httptests
UbitUmarov 2018-05-12 21:35:25 +01:00
parent 468b25ff69
commit fbb77274da
1 changed files with 55 additions and 54 deletions

View File

@ -878,24 +878,24 @@ namespace OpenSim.Services.UserAccountService
// Wearables
AvatarWearable basewearable;
AvatarWearable newbasewearable;
WearableItem wearable;
AvatarWearable newbasewearable = new AvatarWearable();
// copy wearables creating new inventory entries
// converting from v1.0 wearables to v2.0
for (int i = 0; i < wearables.Length; i++)
{
basewearable = wearables[i];
if(basewearable == null || basewearable.Count == 0)
continue;
newbasewearable = new AvatarWearable();
int j = basewearable.Count - 1;
newbasewearable.Clear();
for(int j = 0; j < basewearable.Count; j++)
{
wearable = basewearable[j];
if (wearable.ItemID != UUID.Zero)
{
m_log.DebugFormat("[XXX]: Getting item {0} from avie {1}", wearable.ItemID, source);
m_log.DebugFormat("[XXX]: Getting item {0} from avie {1} for {2} {3}",
wearable.ItemID, source, i, j);
// Get inventory item and copy it
InventoryItemBase item = m_InventoryService.GetItem(source, wearable.ItemID);
@ -946,6 +946,7 @@ namespace OpenSim.Services.UserAccountService
m_log.WarnFormat("[USER ACCOUNT SERVICE]: Error transferring {0} to folder {1}", wearable.ItemID, destinationFolder.ID);
}
}
}
avatarAppearance.SetWearable(i, newbasewearable);
}