[possible still very broken] mess around keyframes. timer events

threads overlaps, some null objects exceptions, region crossing...
This commit is contained in:
UbitUmarov
2012-08-28 03:21:03 +01:00
parent b1d0fab954
commit ef6e007a4c
8 changed files with 319 additions and 123 deletions

View File

@@ -1855,6 +1855,9 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
if (grp.RootPart.PhysActor != null)
grp.RootPart.PhysActor.CrossingFailure();
if (grp.RootPart.KeyframeMotion != null)
grp.RootPart.KeyframeMotion.CrossingFailure();
grp.ScheduleGroupForFullUpdate();
}
@@ -1910,8 +1913,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
grp, e);
}
}
/*
* done on caller ( not in attachments crossing for now)
else
{
if (!grp.IsDeleted)
{
PhysicsActor pa = grp.RootPart.PhysActor;
@@ -1920,15 +1926,17 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
pa.CrossingFailure();
if (grp.RootPart.KeyframeMotion != null)
{
grp.RootPart.Velocity = Vector3.Zero;
// moved to KeyframeMotion.CrossingFailure
// grp.RootPart.Velocity = Vector3.Zero;
grp.RootPart.KeyframeMotion.CrossingFailure();
grp.SendGroupRootTerseUpdate();
// grp.SendGroupRootTerseUpdate();
}
}
}
m_log.ErrorFormat("[ENTITY TRANSFER MODULE]: Prim crossing failed for {0}", grp);
}
*/
}
else
{