aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJustin Clarke Casey2007-12-26 20:21:06 +0000
committerJustin Clarke Casey2007-12-26 20:21:06 +0000
commit01de4bbfbdca14adfa2f86de0f672b8c7cfb92e9 (patch)
treeea79543e037a4d4642408db8f1ff57c1d6999cf2
parent* This update includes a wide range of changes to the ODEPlugin for avatar mo... (diff)
downloadopensim-SC_OLD-01de4bbfbdca14adfa2f86de0f672b8c7cfb92e9.zip
opensim-SC_OLD-01de4bbfbdca14adfa2f86de0f672b8c7cfb92e9.tar.gz
opensim-SC_OLD-01de4bbfbdca14adfa2f86de0f672b8c7cfb92e9.tar.bz2
opensim-SC_OLD-01de4bbfbdca14adfa2f86de0f672b8c7cfb92e9.tar.xz
If a prim is persisted in the region, scripts dragged into its inventory after a server restart would not appear (though the script they contain would still be invoked). This
change fixes that problem.
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.Inventory.cs3
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs7
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectPart.cs10
3 files changed, 15 insertions, 5 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
index c087c59..0689177 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
@@ -499,7 +499,8 @@ namespace OpenSim.Region.Environment.Scenes
499 } 499 }
500 500
501 /// <summary> 501 /// <summary>
502 /// Update an item in a prim (task) inventory 502 /// Update an item in a prim (task) inventory.
503 /// This method does not handle scripts, <see>RezScript(IClientAPI, LLUUID, unit)</see>
503 /// </summary> 504 /// </summary>
504 /// <param name="remoteClient"></param> 505 /// <param name="remoteClient"></param>
505 /// <param name="itemID"></param> 506 /// <param name="itemID"></param>
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
index 263ac27..20d596a 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
@@ -1152,6 +1152,13 @@ namespace OpenSim.Region.Environment.Scenes
1152 { 1152 {
1153 return part.GetInventoryFileName(remoteClient, localID); 1153 return part.GetInventoryFileName(remoteClient, localID);
1154 } 1154 }
1155 else
1156 {
1157 MainLog.Instance.Warn(
1158 "SCENE",
1159 "Couldn't find part {0} in object group {1} ({2}) to retreive prim inventory",
1160 localID, LocalId, UUID);
1161 }
1155 return false; 1162 return false;
1156 } 1163 }
1157 1164
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
index 4f89dd0..33f481d 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs
@@ -420,10 +420,12 @@ namespace OpenSim.Region.Environment.Scenes
420 #region Constructors 420 #region Constructors
421 421
422 /// <summary> 422 /// <summary>
423 /// 423 /// No arg constructor called by region restore db code
424 /// </summary> 424 /// </summary>
425 public SceneObjectPart() 425 public SceneObjectPart()
426 { 426 {
427 // It's not necessary to persist this
428 m_inventoryFileName = "taskinventory" + LLUUID.Random().ToString();
427 } 429 }
428 430
429 public SceneObjectPart(ulong regionHandle, SceneObjectGroup parent, LLUUID ownerID, uint localID, 431 public SceneObjectPart(ulong regionHandle, SceneObjectGroup parent, LLUUID ownerID, uint localID,
@@ -1006,8 +1008,8 @@ namespace OpenSim.Region.Environment.Scenes
1006 /// <param name="localID"></param> 1008 /// <param name="localID"></param>
1007 public bool GetInventoryFileName(IClientAPI client, uint localID) 1009 public bool GetInventoryFileName(IClientAPI client, uint localID)
1008 { 1010 {
1009 if (localID == m_localID) 1011// if (localID == m_localID)
1010 { 1012// {
1011 if (m_inventorySerial > 0) 1013 if (m_inventorySerial > 0)
1012 { 1014 {
1013 client.SendTaskInventory(m_uuid, (short)m_inventorySerial, 1015 client.SendTaskInventory(m_uuid, (short)m_inventorySerial,
@@ -1019,7 +1021,7 @@ namespace OpenSim.Region.Environment.Scenes
1019 client.SendTaskInventory(m_uuid, 0, new byte[0]); 1021 client.SendTaskInventory(m_uuid, 0, new byte[0]);
1020 return false; 1022 return false;
1021 } 1023 }
1022 } 1024// }
1023 return false; 1025 return false;
1024 } 1026 }
1025 1027