aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/SQLite/SQLiteXInventoryData.cs
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2011-05-17 21:49:38 +0100
committerJustin Clark-Casey (justincc)2011-05-17 22:31:16 +0100
commit491279f99afc65860d44765ee7829c7dd5e4e38e (patch)
tree3237395646d9fd92b2424df31bc8f6e8109c7f48 /OpenSim/Data/SQLite/SQLiteXInventoryData.cs
parentdon't throw a null reference if an inventory link target doesn't exist when w... (diff)
downloadopensim-SC_OLD-491279f99afc65860d44765ee7829c7dd5e4e38e.zip
opensim-SC_OLD-491279f99afc65860d44765ee7829c7dd5e4e38e.tar.gz
opensim-SC_OLD-491279f99afc65860d44765ee7829c7dd5e4e38e.tar.bz2
opensim-SC_OLD-491279f99afc65860d44765ee7829c7dd5e4e38e.tar.xz
Allow item links to be deleted even when other deletes and purges are disabled.
If these links are not deleted, then they will build up in the player's inventory until they can no longer log in. Accidental deletion of links due to bugs or other causes is potentially inconvenient but on a par with items being accidentally moved. When a link is deleted, the target of the link is never touched. This is a general solution that accounts for the use of links anywhere in the user's inventory.
Diffstat (limited to '')
-rw-r--r--OpenSim/Data/SQLite/SQLiteXInventoryData.cs10
1 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Data/SQLite/SQLiteXInventoryData.cs b/OpenSim/Data/SQLite/SQLiteXInventoryData.cs
index ccbd86e..02edc30 100644
--- a/OpenSim/Data/SQLite/SQLiteXInventoryData.cs
+++ b/OpenSim/Data/SQLite/SQLiteXInventoryData.cs
@@ -91,11 +91,21 @@ namespace OpenSim.Data.SQLite
91 return m_Folders.Delete(field, val); 91 return m_Folders.Delete(field, val);
92 } 92 }
93 93
94 public bool DeleteFolders(string[] fields, string[] vals)
95 {
96 return m_Folders.Delete(fields, vals);
97 }
98
94 public bool DeleteItems(string field, string val) 99 public bool DeleteItems(string field, string val)
95 { 100 {
96 return m_Items.Delete(field, val); 101 return m_Items.Delete(field, val);
97 } 102 }
98 103
104 public bool DeleteItems(string[] fields, string[] vals)
105 {
106 return m_Items.Delete(fields, vals);
107 }
108
99 public bool MoveItem(string id, string newParent) 109 public bool MoveItem(string id, string newParent)
100 { 110 {
101 return m_Items.MoveItem(id, newParent); 111 return m_Items.MoveItem(id, newParent);