Fixed handling of inventory a bit

- AssetType isn't InventoryType. Those enums contain different numbers. Use AssetType for the asset type, InventoryType for the inventory type.
- The ToString method (or ToLower) of AssetType/InventoryType doesn't necessarily return the correct LLSD string.
- Replaced several magic numbers by their corresponding enum.
- Fixed the invType for gestures and animations in the library.
This should fix Mantis #3610 and the non-terminating inventory loading
This commit is contained in:
Homer Horwitz
2009-05-09 21:11:12 +00:00
parent c534d7f614
commit 1d234ca83f
7 changed files with 57 additions and 49 deletions

View File

@@ -776,7 +776,7 @@ namespace OpenSim.Region.Framework.Scenes
foreach (TaskInventoryItem item in m_items.Values)
{
if (item.InvType != 6)
if (item.InvType != (int)InventoryType.Object)
{
if ((item.CurrentPermissions & item.NextPermissions & (uint)PermissionMask.Copy) == 0)
mask &= ~((uint)PermissionMask.Copy >> 13);
@@ -809,7 +809,7 @@ namespace OpenSim.Region.Framework.Scenes
{
foreach (TaskInventoryItem item in m_items.Values)
{
if (item.InvType == 6 && (item.CurrentPermissions & 7) != 0)
if (item.InvType == (int)InventoryType.Object && (item.CurrentPermissions & 7) != 0)
{
if ((item.CurrentPermissions & ((uint)PermissionMask.Copy >> 13)) == 0)
item.CurrentPermissions &= ~(uint)PermissionMask.Copy;
@@ -840,7 +840,7 @@ namespace OpenSim.Region.Framework.Scenes
{
foreach (TaskInventoryItem item in m_items.Values)
{
if (item.InvType == 10)
if (item.InvType == (int)InventoryType.LSL)
{
return true;
}
@@ -866,7 +866,7 @@ namespace OpenSim.Region.Framework.Scenes
foreach (TaskInventoryItem item in m_items.Values)
{
if (item.InvType == 10)
if (item.InvType == (int)InventoryType.LSL)
{
foreach (IScriptModule e in engines)
{
@@ -890,7 +890,7 @@ namespace OpenSim.Region.Framework.Scenes
foreach (TaskInventoryItem item in m_items.Values)
{
if (item.InvType == 10)
if (item.InvType == (int)InventoryType.LSL)
{
foreach (IScriptModule e in engines)
{