diff options
author | Melanie Thielker | 2008-11-19 01:37:39 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-11-19 01:37:39 +0000 |
commit | a104cc2c629add78e1f73e71f5aa1f65e3f2857c (patch) | |
tree | f2c096089cfe0b09781db551bd088a2f1d208c8d /OpenSim | |
parent | Adding the OSD dll (diff) | |
download | opensim-SC_OLD-a104cc2c629add78e1f73e71f5aa1f65e3f2857c.zip opensim-SC_OLD-a104cc2c629add78e1f73e71f5aa1f65e3f2857c.tar.gz opensim-SC_OLD-a104cc2c629add78e1f73e71f5aa1f65e3f2857c.tar.bz2 opensim-SC_OLD-a104cc2c629add78e1f73e71f5aa1f65e3f2857c.tar.xz |
Fix deleting object that have been persisted already from the DB
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/AsyncSceneObjectGroupDeleter.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/AsyncSceneObjectGroupDeleter.cs b/OpenSim/Region/Environment/Scenes/AsyncSceneObjectGroupDeleter.cs index 58e0ca3..a9fa879 100644 --- a/OpenSim/Region/Environment/Scenes/AsyncSceneObjectGroupDeleter.cs +++ b/OpenSim/Region/Environment/Scenes/AsyncSceneObjectGroupDeleter.cs | |||
@@ -42,6 +42,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
42 | public IClientAPI remoteClient; | 42 | public IClientAPI remoteClient; |
43 | public SceneObjectGroup objectGroup; | 43 | public SceneObjectGroup objectGroup; |
44 | public UUID folderID; | 44 | public UUID folderID; |
45 | public bool permissionToDelete; | ||
45 | } | 46 | } |
46 | 47 | ||
47 | /// <summary> | 48 | /// <summary> |
@@ -87,6 +88,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
87 | dtis.folderID = folderID; | 88 | dtis.folderID = folderID; |
88 | dtis.objectGroup = objectGroup; | 89 | dtis.objectGroup = objectGroup; |
89 | dtis.remoteClient = remoteClient; | 90 | dtis.remoteClient = remoteClient; |
91 | dtis.permissionToDelete = permissionToDelete; | ||
90 | 92 | ||
91 | m_inventoryDeletes.Enqueue(dtis); | 93 | m_inventoryDeletes.Enqueue(dtis); |
92 | } | 94 | } |
@@ -127,6 +129,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
127 | 129 | ||
128 | try | 130 | try |
129 | { | 131 | { |
132 | if (x.permissionToDelete) | ||
133 | m_scene.DeleteFromStorage(x.objectGroup.UUID); | ||
130 | m_scene.DeleteToInventory(x.destination, x.folderID, x.objectGroup, x.remoteClient); | 134 | m_scene.DeleteToInventory(x.destination, x.folderID, x.objectGroup, x.remoteClient); |
131 | } | 135 | } |
132 | catch (Exception e) | 136 | catch (Exception e) |
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs index 5bfa1eb..324e38c 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | |||
@@ -1638,8 +1638,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
1638 | /// <param name="remoteClient"> </param> | 1638 | /// <param name="remoteClient"> </param> |
1639 | /// <param name="objectGroup"></param> | 1639 | /// <param name="objectGroup"></param> |
1640 | /// <param name="folderID"></param> | 1640 | /// <param name="folderID"></param> |
1641 | /// <param name="permissionToDelete"></param> | ||
1641 | public virtual UUID DeleteToInventory(int destination, UUID folderID, | 1642 | public virtual UUID DeleteToInventory(int destination, UUID folderID, |
1642 | SceneObjectGroup objectGroup, IClientAPI remoteClient) | 1643 | SceneObjectGroup objectGroup, IClientAPI remoteClient) |
1643 | { | 1644 | { |
1644 | UUID assetID = UUID.Zero; | 1645 | UUID assetID = UUID.Zero; |
1645 | 1646 | ||