aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
diff options
context:
space:
mode:
authorMelanie2009-08-04 03:17:13 +0100
committerMelanie2009-08-04 03:17:13 +0100
commit17bdc45c5ce623549b185a6c4bd5e8fdf00c8d8e (patch)
treeb1e75c63acc472c6e211f2054abedf99ccf1bf06 /OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
parentMinor: formatting changes. (diff)
downloadopensim-SC-17bdc45c5ce623549b185a6c4bd5e8fdf00c8d8e.zip
opensim-SC-17bdc45c5ce623549b185a6c4bd5e8fdf00c8d8e.tar.gz
opensim-SC-17bdc45c5ce623549b185a6c4bd5e8fdf00c8d8e.tar.bz2
opensim-SC-17bdc45c5ce623549b185a6c4bd5e8fdf00c8d8e.tar.xz
Add plumbing for the SceneObjectDeleter to wait for the script engine to
allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs11
1 files changed, 8 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs b/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
index 4ef1749..f8208ec 100644
--- a/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
+++ b/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs
@@ -109,7 +109,7 @@ namespace OpenSim.Region.Framework.Scenes
109 109
110 while (InventoryDeQueueAndDelete()) 110 while (InventoryDeQueueAndDelete())
111 { 111 {
112 m_log.Debug("[SCENE]: Sent item successfully to inventory, continuing..."); 112 //m_log.Debug("[SCENE]: Sent item successfully to inventory, continuing...");
113 } 113 }
114 } 114 }
115 115
@@ -128,11 +128,16 @@ namespace OpenSim.Region.Framework.Scenes
128 int left = m_inventoryDeletes.Count; 128 int left = m_inventoryDeletes.Count;
129 if (left > 0) 129 if (left > 0)
130 { 130 {
131 x = m_inventoryDeletes.Dequeue();
132 if (!x.objectGroup.CanBeDeleted())
133 {
134 m_inventoryDeletes.Enqueue(x);
135 return true;
136 }
137
131 m_log.DebugFormat( 138 m_log.DebugFormat(
132 "[SCENE]: Sending object to user's inventory, {0} item(s) remaining.", left); 139 "[SCENE]: Sending object to user's inventory, {0} item(s) remaining.", left);
133 140
134 x = m_inventoryDeletes.Dequeue();
135
136 try 141 try
137 { 142 {
138 m_scene.DeleteToInventory(x.action, x.folderID, x.objectGroup, x.remoteClient); 143 m_scene.DeleteToInventory(x.action, x.folderID, x.objectGroup, x.remoteClient);