diff options
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | 15 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs | 4 |
2 files changed, 14 insertions, 5 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs index 6555b54..dd7d831 100644 --- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | |||
@@ -264,8 +264,17 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
264 | if (AttachmentPt != 0 && AttachmentPt != objatt.GetAttachmentPoint()) | 264 | if (AttachmentPt != 0 && AttachmentPt != objatt.GetAttachmentPoint()) |
265 | tainted = true; | 265 | tainted = true; |
266 | 266 | ||
267 | AttachObject(remoteClient, objatt, AttachmentPt, false); | 267 | // This will throw if the attachment fails |
268 | //objatt.ScheduleGroupForFullUpdate(); | 268 | try |
269 | { | ||
270 | AttachObject(remoteClient, objatt, AttachmentPt, false); | ||
271 | } | ||
272 | catch | ||
273 | { | ||
274 | // Make sure the object doesn't stick around and bail | ||
275 | m_scene.DeleteSceneObject(objatt, false); | ||
276 | return null; | ||
277 | } | ||
269 | 278 | ||
270 | if (tainted) | 279 | if (tainted) |
271 | objatt.HasGroupChanged = true; | 280 | objatt.HasGroupChanged = true; |
@@ -594,4 +603,4 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
594 | so.HasGroupChanged = false; | 603 | so.HasGroupChanged = false; |
595 | } | 604 | } |
596 | } | 605 | } |
597 | } \ No newline at end of file | 606 | } |
diff --git a/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs b/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs index 62761fb..e3ef263 100644 --- a/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs +++ b/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs | |||
@@ -307,7 +307,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests | |||
307 | public void TestDelinkPersistence() | 307 | public void TestDelinkPersistence() |
308 | { | 308 | { |
309 | TestHelper.InMethod(); | 309 | TestHelper.InMethod(); |
310 | log4net.Config.XmlConfigurator.Configure(); | 310 | //log4net.Config.XmlConfigurator.Configure(); |
311 | 311 | ||
312 | TestScene scene = SceneSetupHelpers.SetupScene(); | 312 | TestScene scene = SceneSetupHelpers.SetupScene(); |
313 | 313 | ||
@@ -342,4 +342,4 @@ namespace OpenSim.Region.Framework.Scenes.Tests | |||
342 | Assert.That(storedObjects[0].Children.ContainsKey(rootPartUuid)); | 342 | Assert.That(storedObjects[0].Children.ContainsKey(rootPartUuid)); |
343 | } | 343 | } |
344 | } | 344 | } |
345 | } \ No newline at end of file | 345 | } |