Compare commits

...

6 Commits

Author SHA1 Message Date
Melanie
2463f5451c Merge branch 'master' into careminster-presence-refactor 2011-01-18 01:26:03 +00:00
Melanie
4f8ba53f86 Prevent activation and deactivation of gestures from clobbering the slam
bits
2011-01-18 00:55:08 +01:00
Melanie
ddb4de139c Change gesture activation to not quash any other flags 2011-01-17 21:22:32 +01:00
Melanie
76f39d326e Add a new ViewObjectInventory permission to decouple viewing from
+MOD status
2011-01-14 18:26:41 +01:00
Melanie
8074c6ace1 Revert "Replace the new, tricky MySql.Data.dll with the older version from 0.6.9"
This reverts commit e5ce59ff34.

The old module causes a truly massive (double!) rise in connections. Please
put "old guids=true;" back in after this commit
2011-01-14 14:54:28 +01:00
Melanie
30320077a2 Fix slam bits being lost when editing perms in prim inventory 2011-01-14 03:20:47 +00:00
4 changed files with 21 additions and 4 deletions

View File

@@ -867,7 +867,7 @@ namespace OpenSim.Data.MySQL
dbcon.Open();
using (MySqlCommand sqlCmd = new MySqlCommand(
"SELECT * FROM inventoryitems WHERE avatarId = ?uuid AND assetType = ?type and flags = 1", dbcon))
"SELECT * FROM inventoryitems WHERE avatarId = ?uuid AND assetType = ?type and flags & 1", dbcon))
{
sqlCmd.Parameters.AddWithValue("?uuid", avatarID.ToString());
sqlCmd.Parameters.AddWithValue("?type", (int)AssetType.Gesture);

View File

@@ -69,7 +69,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Gestures
item = invService.GetItem(item);
if (item != null)
{
item.Flags = 1;
item.Flags |= 1;
invService.UpdateItem(item);
}
else
@@ -85,7 +85,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Gestures
item = invService.GetItem(item);
if (item != null)
{
item.Flags = 0;
item.Flags &= ~1;
invService.UpdateItem(item);
}
else
@@ -93,4 +93,4 @@ namespace OpenSim.Region.CoreModules.Avatar.Gestures
"[GESTURES]: Unable to find gesture to deactivate {0} for {1}", gestureId, client.Name);
}
}
}
}

View File

@@ -49,6 +49,7 @@ namespace OpenSim.Region.Framework.Scenes
public delegate bool DuplicateObjectHandler(int objectCount, UUID objectID, UUID owner, Scene scene, Vector3 objectPosition);
public delegate bool EditObjectHandler(UUID objectID, UUID editorID, Scene scene);
public delegate bool EditObjectInventoryHandler(UUID objectID, UUID editorID, Scene scene);
public delegate bool ViewObjectInventoryHandler(UUID objectID, UUID editorID, Scene scene);
public delegate bool MoveObjectHandler(UUID objectID, UUID moverID, Scene scene);
public delegate bool ObjectEntryHandler(UUID objectID, bool enteringRegion, Vector3 newPoint, Scene scene);
public delegate bool ReturnObjectsHandler(ILandObject land, UUID user, List<SceneObjectGroup> objects, Scene scene);
@@ -116,6 +117,7 @@ namespace OpenSim.Region.Framework.Scenes
public event DuplicateObjectHandler OnDuplicateObject;
public event EditObjectHandler OnEditObject;
public event EditObjectInventoryHandler OnEditObjectInventory;
public event ViewObjectInventoryHandler OnViewObjectInventory;
public event MoveObjectHandler OnMoveObject;
public event ObjectEntryHandler OnObjectEntry;
public event ReturnObjectsHandler OnReturnObjects;
@@ -401,6 +403,21 @@ namespace OpenSim.Region.Framework.Scenes
return true;
}
public bool CanViewObjectInventory(UUID objectID, UUID editorID)
{
ViewObjectInventoryHandler handler = OnViewObjectInventory;
if (handler != null)
{
Delegate[] list = handler.GetInvocationList();
foreach (ViewObjectInventoryHandler h in list)
{
if (h(objectID, editorID, m_scene) == false)
return false;
}
}
return true;
}
#endregion
#region MOVE OBJECT

Binary file not shown.