diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.cs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index ce713c5..9ca845f 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -1457,6 +1457,28 @@ namespace OpenSim.Region.Environment.Scenes | |||
1457 | if (XMLMethod == 0) | 1457 | if (XMLMethod == 0) |
1458 | { | 1458 | { |
1459 | m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData); | 1459 | m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData); |
1460 | SceneObjectPart RootPrim = GetSceneObjectPart(primID); | ||
1461 | if (RootPrim != null) | ||
1462 | { | ||
1463 | if (RootPrim.Shape.PCode == (byte)PCode.Prim) | ||
1464 | { | ||
1465 | SceneObjectGroup grp = RootPrim.ParentGroup; | ||
1466 | if (grp != null) | ||
1467 | { | ||
1468 | if (RootPrim.Shape.State != 0) | ||
1469 | { | ||
1470 | // Attachment | ||
1471 | ScenePresence sp = GetScenePresence(grp.OwnerID); | ||
1472 | if (sp != null) | ||
1473 | { | ||
1474 | m_innerScene.AttachObject(sp.ControllingClient, grp.LocalId, (uint)0, grp.GroupRotation, grp.AbsolutePosition); | ||
1475 | } | ||
1476 | } | ||
1477 | } | ||
1478 | |||
1479 | |||
1480 | } | ||
1481 | } | ||
1460 | return true; | 1482 | return true; |
1461 | } | 1483 | } |
1462 | else | 1484 | else |