Fix a minor race condition in llInstantMessage() where slightly wrong origin co-ordinates could be given for a fast moving prim

0.7.4-extended
Justin Clark-Casey (justincc) 2013-03-14 22:09:05 +00:00
parent 4531b2274e
commit 6ed5561057
1 changed files with 5 additions and 3 deletions

View File

@ -3174,13 +3174,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
msg.ParentEstateID = 0; //ParentEstateID; msg.ParentEstateID = 0; //ParentEstateID;
msg.Position = new Vector3(m_host.AbsolutePosition); msg.Position = new Vector3(m_host.AbsolutePosition);
msg.RegionID = World.RegionInfo.RegionID.Guid;//RegionID.Guid; msg.RegionID = World.RegionInfo.RegionID.Guid;//RegionID.Guid;
Vector3 pos = m_host.AbsolutePosition;
msg.binaryBucket msg.binaryBucket
= Util.StringToBytes256( = Util.StringToBytes256(
"{0}/{1}/{2}/{3}", "{0}/{1}/{2}/{3}",
World.RegionInfo.RegionName, World.RegionInfo.RegionName,
(int)Math.Floor(m_host.AbsolutePosition.X), (int)Math.Floor(pos.X),
(int)Math.Floor(m_host.AbsolutePosition.Y), (int)Math.Floor(pos.Y),
(int)Math.Floor(m_host.AbsolutePosition.Z)); (int)Math.Floor(pos.Z));
if (m_TransferModule != null) if (m_TransferModule != null)
{ {