diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rwxr-xr-x | OpenSim/Region/Framework/Scenes/Scene.cs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 03f46bb..ff1e922 100755 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -2963,7 +2963,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
2963 | if (sceneObject.IsAttachmentCheckFull()) // Attachment | 2963 | if (sceneObject.IsAttachmentCheckFull()) // Attachment |
2964 | { | 2964 | { |
2965 | sceneObject.RootPart.AddFlag(PrimFlags.TemporaryOnRez); | 2965 | sceneObject.RootPart.AddFlag(PrimFlags.TemporaryOnRez); |
2966 | // sceneObject.RootPart.AddFlag(PrimFlags.Phantom); | ||
2967 | 2966 | ||
2968 | // Don't sent a full update here because this will cause full updates to be sent twice for | 2967 | // Don't sent a full update here because this will cause full updates to be sent twice for |
2969 | // attachments on region crossings, resulting in viewer glitches. | 2968 | // attachments on region crossings, resulting in viewer glitches. |
@@ -2984,13 +2983,17 @@ namespace OpenSim.Region.Framework.Scenes | |||
2984 | // m_log.DebugFormat( | 2983 | // m_log.DebugFormat( |
2985 | // "[ATTACHMENT]: Attach to avatar {0} at position {1}", sp.UUID, grp.AbsolutePosition); | 2984 | // "[ATTACHMENT]: Attach to avatar {0} at position {1}", sp.UUID, grp.AbsolutePosition); |
2986 | 2985 | ||
2987 | RootPrim.RemFlag(PrimFlags.TemporaryOnRez); | ||
2988 | |||
2989 | // We must currently not resume scripts at this stage since AttachmentsModule does not have the | 2986 | // We must currently not resume scripts at this stage since AttachmentsModule does not have the |
2990 | // information that this is due to a teleport/border cross rather than an ordinary attachment. | 2987 | // information that this is due to a teleport/border cross rather than an ordinary attachment. |
2991 | // We currently do this in Scene.MakeRootAgent() instead. | 2988 | // We currently do this in Scene.MakeRootAgent() instead. |
2989 | bool attached = false; | ||
2992 | if (AttachmentsModule != null) | 2990 | if (AttachmentsModule != null) |
2993 | AttachmentsModule.AttachObject(sp, grp, 0, false, false, true); | 2991 | attached = AttachmentsModule.AttachObject(sp, grp, 0, false, false, true); |
2992 | |||
2993 | if (attached) | ||
2994 | RootPrim.RemFlag(PrimFlags.TemporaryOnRez); | ||
2995 | else | ||
2996 | m_log.DebugFormat("[SCENE]: Attachment {0} arrived but failed to attach, setting to temp", sceneObject.UUID); | ||
2994 | } | 2997 | } |
2995 | else | 2998 | else |
2996 | { | 2999 | { |