Make sure state machine is reset if crossing is aborted

avinationmerge
Melanie 2013-02-23 21:00:05 +00:00
parent e3ea2c4bee
commit ee18db027c
1 changed files with 6 additions and 0 deletions

View File

@ -1132,10 +1132,16 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
bool isFlying, string version) bool isFlying, string version)
{ {
if (!CrossAgentToNewRegionPrep(agent, neighbourRegion)) if (!CrossAgentToNewRegionPrep(agent, neighbourRegion))
{
m_entityTransferStateMachine.ResetFromTransit(agent.UUID);
return agent; return agent;
}
if (!CrossAgentIntoNewRegionMain(agent, pos, neighbourRegion, isFlying)) if (!CrossAgentIntoNewRegionMain(agent, pos, neighbourRegion, isFlying))
{
m_entityTransferStateMachine.ResetFromTransit(agent.UUID);
return agent; return agent;
}
CrossAgentToNewRegionPost(agent, pos, neighbourRegion, isFlying, version); CrossAgentToNewRegionPost(agent, pos, neighbourRegion, isFlying, version);
return agent; return agent;