aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs9
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs4
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs2
-rw-r--r--OpenSim/Region/ScriptEngine/XEngine/XEngine.cs18
4 files changed, 11 insertions, 22 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs
index 3e86848..8f289c0 100644
--- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/OfflineMessageModule.cs
@@ -180,11 +180,12 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
180 180
181 private void RetrieveInstantMessages(IClientAPI client) 181 private void RetrieveInstantMessages(IClientAPI client)
182 { 182 {
183 if (m_RestURL != "") 183 if (m_RestURL == String.Empty)
184 { 184 return;
185 m_log.DebugFormat("[OFFLINE MESSAGING] Retrieving stored messages for {0}", client.AgentId); 185
186 m_log.DebugFormat("[OFFLINE MESSAGING] Retrieving stored messages for {0}", client.AgentId);
186 187
187 List<GridInstantMessage> msglist = SynchronousRestObjectPoster.BeginPostObject<UUID, List<GridInstantMessage>>( 188 List<GridInstantMessage> msglist = SynchronousRestObjectPoster.BeginPostObject<UUID, List<GridInstantMessage>>(
188 "POST", m_RestURL + "/RetrieveMessages/", client.AgentId); 189 "POST", m_RestURL + "/RetrieveMessages/", client.AgentId);
189 190
190 if (msglist != null) 191 if (msglist != null)
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
index aea005e..8b58b3e 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
@@ -74,7 +74,7 @@ namespace OpenSim.Region.Framework.Scenes
74 /// <summary> 74 /// <summary>
75 /// Stop the scripts contained in all the prims in this group 75 /// Stop the scripts contained in all the prims in this group
76 /// </summary> 76 /// </summary>
77 public void RemoveScriptInstances() 77 public void RemoveScriptInstances(bool sceneObjectBeingDeleted)
78 { 78 {
79 lockPartsForRead(true); 79 lockPartsForRead(true);
80 List<SceneObjectPart> values = new List<SceneObjectPart>(m_parts.Values); 80 List<SceneObjectPart> values = new List<SceneObjectPart>(m_parts.Values);
@@ -82,7 +82,7 @@ namespace OpenSim.Region.Framework.Scenes
82 82
83 foreach (SceneObjectPart part in values) 83 foreach (SceneObjectPart part in values)
84 { 84 {
85 part.Inventory.RemoveScriptInstances(); 85 part.Inventory.RemoveScriptInstances(sceneObjectBeingDeleted);
86 } 86 }
87 87
88 } 88 }
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
index 1de0092..9661775 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
@@ -249,7 +249,7 @@ namespace OpenSim.Region.Framework.Scenes
249 { 249 {
250 if ((int)InventoryType.LSL == item.InvType) 250 if ((int)InventoryType.LSL == item.InvType)
251 { 251 {
252 RemoveScriptInstance(item.ItemID); 252 RemoveScriptInstance(item.ItemID, sceneObjectBeingDeleted);
253 m_part.RemoveScriptEvents(item.ItemID); 253 m_part.RemoveScriptEvents(item.ItemID);
254 } 254 }
255 } 255 }
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
index 73850e1..35d57d8 100644
--- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
+++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
@@ -885,12 +885,6 @@ namespace OpenSim.Region.ScriptEngine.XEngine
885 instance.ClearQueue(); 885 instance.ClearQueue();
886 instance.Stop(0); 886 instance.Stop(0);
887 887
888 SceneObjectPart part =
889 m_Scene.GetSceneObjectPart(localID);
890
891 if (part != null)
892 part.RemoveScriptEvents(itemID);
893
894// bool objectRemoved = false; 888// bool objectRemoved = false;
895 889
896 lock (m_PrimObjects) 890 lock (m_PrimObjects)
@@ -923,18 +917,12 @@ namespace OpenSim.Region.ScriptEngine.XEngine
923 917
924 instance = null; 918 instance = null;
925 919
926<<<<<<< HEAD:OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
927 ObjectRemoved handlerObjectRemoved = OnObjectRemoved; 920 ObjectRemoved handlerObjectRemoved = OnObjectRemoved;
928 if (handlerObjectRemoved != null) 921 if (handlerObjectRemoved != null)
922 {
923 SceneObjectPart part = m_Scene.GetSceneObjectPart(localID);
929 handlerObjectRemoved(part.UUID); 924 handlerObjectRemoved(part.UUID);
930======= 925 }
931 ObjectRemoved handlerObjectRemoved = OnObjectRemoved;
932 if (handlerObjectRemoved != null)
933 {
934 SceneObjectPart part = m_Scene.GetSceneObjectPart(localID);
935 handlerObjectRemoved(part.UUID);
936 }
937>>>>>>> master:OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
938 926
939 CleanAssemblies(); 927 CleanAssemblies();
940 928