backport from master fix for attachment display

this fix stops two full updates being sent on attachment rather than one.  Sending two can stop the client displaying attachments properly
0.6.9-post-fixes
Justin Clark-Casey (justincc) 2010-05-24 19:19:44 +01:00
parent 8048a8a39d
commit a6c7995b71
3 changed files with 5 additions and 3 deletions

View File

@ -2076,7 +2076,10 @@ namespace OpenSim.Region.Framework.Scenes
group.RootPart.IsAttachment = true;
}
AddNewSceneObject(group, true);
// If we're rezzing an attachment then don't ask AddNewSceneObject() to update the client since
// we'll be doing that later on. Scheduling more than one full update during the attachment
// process causes some clients to fail to display the attachment properly.
AddNewSceneObject(group, true, !attachment);
// m_log.InfoFormat("ray end point for inventory rezz is {0} {1} {2} ", RayEnd.X, RayEnd.Y, RayEnd.Z);
// if attachment we set it's asset id so object updates can reflect that

View File

@ -536,7 +536,6 @@ namespace OpenSim.Region.Framework.Scenes
// m_log.DebugFormat(
// "[SCENE GRAPH]: Retrieved single object {0} for attachment to {1} on point {2}",
// objatt.Name, remoteClient.Name, AttachmentPt);
if (objatt != null)
{
bool tainted = false;

View File

@ -1514,7 +1514,7 @@ namespace OpenSim.Region.Framework.Scenes
internal void SendPartFullUpdate(IClientAPI remoteClient, SceneObjectPart part, uint clientFlags)
{
// m_log.DebugFormat(
// "[SOG]: Sendinging part full update to {0} for {1} {2}", remoteClient.Name, part.Name, part.LocalId);
// "[SOG]: Sending part full update to {0} for {1} {2}", remoteClient.Name, part.Name, part.LocalId);
if (m_rootPart.UUID == part.UUID)
{