aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Storage
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Storage')
-rw-r--r--OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs19
1 files changed, 18 insertions, 1 deletions
diff --git a/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs b/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs
index b5e9e1c..6f12c47 100644
--- a/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs
+++ b/OpenSim/Region/Storage/OpenSim.DataStore.MonoSqlite/MonoSqliteDataStore.cs
@@ -475,7 +475,24 @@ namespace OpenSim.DataStore.MonoSqliteStorage
475 475
476 public void RemoveObject(LLUUID obj) 476 public void RemoveObject(LLUUID obj)
477 { 477 {
478 // TODO: remove code 478 DataTable prims = ds.Tables["prims"];
479 DataTable shapes = ds.Tables["primshapes"];
480
481 string selectExp = "SceneGroupID = '" + obj.ToString() + "'";
482 DataRow[] primRows = prims.Select(selectExp);
483 foreach (DataRow row in primRows)
484 {
485 LLUUID uuid = new LLUUID((string)row["UUID"]);
486 DataRow shapeRow = shapes.Rows.Find(uuid);
487 if (shapeRow != null)
488 {
489 shapeRow.Delete();
490 }
491 row.Delete();
492 }
493
494 primDa.Update(ds, "prims");
495 shapeDa.Update(ds, "primshapes");
479 } 496 }
480 497
481 public List<SceneObjectGroup> LoadObjects() 498 public List<SceneObjectGroup> LoadObjects()