aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/SQLite
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Data/SQLite/SQLiteInventoryStore.cs3
-rw-r--r--OpenSim/Data/SQLite/SQLiteRegionData.cs29
2 files changed, 14 insertions, 18 deletions
diff --git a/OpenSim/Data/SQLite/SQLiteInventoryStore.cs b/OpenSim/Data/SQLite/SQLiteInventoryStore.cs
index 97c40ba..557dec7 100644
--- a/OpenSim/Data/SQLite/SQLiteInventoryStore.cs
+++ b/OpenSim/Data/SQLite/SQLiteInventoryStore.cs
@@ -301,7 +301,8 @@ namespace OpenSim.Data.SQLite
301 DataTable inventoryFolderTable = ds.Tables["inventoryfolders"]; 301 DataTable inventoryFolderTable = ds.Tables["inventoryfolders"];
302 302
303 inventoryRow = inventoryFolderTable.Rows.Find(item.Folder.ToString()); 303 inventoryRow = inventoryFolderTable.Rows.Find(item.Folder.ToString());
304 inventoryRow["version"] = (int)inventoryRow["version"] + 1; 304 if(inventoryRow != null) //MySQL doesn't throw an exception here, so sqlite shouldn't either.
305 inventoryRow["version"] = (int)inventoryRow["version"] + 1;
305 306
306 invFoldersDa.Update(ds, "inventoryfolders"); 307 invFoldersDa.Update(ds, "inventoryfolders");
307 } 308 }
diff --git a/OpenSim/Data/SQLite/SQLiteRegionData.cs b/OpenSim/Data/SQLite/SQLiteRegionData.cs
index d2548c2..0259ac5 100644
--- a/OpenSim/Data/SQLite/SQLiteRegionData.cs
+++ b/OpenSim/Data/SQLite/SQLiteRegionData.cs
@@ -307,26 +307,21 @@ namespace OpenSim.Data.SQLite
307 /// <param name="regionUUID">the region UUID</param> 307 /// <param name="regionUUID">the region UUID</param>
308 public void StoreObject(SceneObjectGroup obj, UUID regionUUID) 308 public void StoreObject(SceneObjectGroup obj, UUID regionUUID)
309 { 309 {
310 uint flags = obj.RootPart.GetEffectiveObjectFlags();
311
312 // Eligibility check
313 //
314 if ((flags & (uint)PrimFlags.Temporary) != 0)
315 return;
316 if ((flags & (uint)PrimFlags.TemporaryOnRez) != 0)
317 return;
318
310 lock (ds) 319 lock (ds)
311 { 320 {
312 foreach (SceneObjectPart prim in obj.Children.Values) 321 foreach (SceneObjectPart prim in obj.Children.Values)
313 { 322 {
314 if ((prim.GetEffectiveObjectFlags() & (uint)PrimFlags.Temporary) == 0 323 m_log.Info("[REGION DB]: Adding obj: " + obj.UUID + " to region: " + regionUUID);
315 && (prim.GetEffectiveObjectFlags() & (uint)PrimFlags.TemporaryOnRez) == 0) 324 addPrim(prim, obj.UUID, regionUUID);
316 {
317 m_log.Info("[REGION DB]: Adding obj: " + obj.UUID + " to region: " + regionUUID);
318 addPrim(prim, obj.UUID, regionUUID);
319 }
320 else if (prim.Stopped)
321 {
322 //m_log.Info("[DATASTORE]: " +
323 //"Adding stopped obj: " + obj.UUID + " to region: " + regionUUID);
324 //addPrim(prim, obj.UUID.ToString(), regionUUID.ToString());
325 }
326 else
327 {
328 // m_log.Info("[DATASTORE]: Ignoring Physical obj: " + obj.UUID + " in region: " + regionUUID);
329 }
330 } 325 }
331 } 326 }
332 327
@@ -1130,7 +1125,7 @@ namespace OpenSim.Data.SQLite
1130 // explicit conversion of integers is required, which sort 1125 // explicit conversion of integers is required, which sort
1131 // of sucks. No idea if there is a shortcut here or not. 1126 // of sucks. No idea if there is a shortcut here or not.
1132 prim.CreationDate = Convert.ToInt32(row["CreationDate"]); 1127 prim.CreationDate = Convert.ToInt32(row["CreationDate"]);
1133 prim.Name = (String) row["Name"]; 1128 prim.Name = row["Name"] == DBNull.Value ? string.Empty : (string)row["Name"];
1134 // various text fields 1129 // various text fields
1135 prim.Text = (String) row["Text"]; 1130 prim.Text = (String) row["Text"];
1136 prim.Color = Color.FromArgb(Convert.ToInt32(row["ColorA"]), 1131 prim.Color = Color.FromArgb(Convert.ToInt32(row["ColorA"]),