diff options
Diffstat (limited to 'linden/indra/newview/llviewermessage.cpp')
-rw-r--r-- | linden/indra/newview/llviewermessage.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/linden/indra/newview/llviewermessage.cpp b/linden/indra/newview/llviewermessage.cpp index 26dd86c..815dc49 100644 --- a/linden/indra/newview/llviewermessage.cpp +++ b/linden/indra/newview/llviewermessage.cpp | |||
@@ -2754,6 +2754,10 @@ void process_agent_movement_complete(LLMessageSystem* msg, void**) | |||
2754 | // appropriate. | 2754 | // appropriate. |
2755 | LLVector3 shift_vector = regionp->getPosRegionFromGlobal( | 2755 | LLVector3 shift_vector = regionp->getPosRegionFromGlobal( |
2756 | gAgent.getRegion()->getOriginGlobal()); | 2756 | gAgent.getRegion()->getOriginGlobal()); |
2757 | // don't shift objects, if teleporting more than about 1000 sims, as | ||
2758 | // for long teleports shifting objects garbles the view at the target region | ||
2759 | if (shift_vector.lengthSquared() > 6.5e10f) | ||
2760 | shift_vector = LLVector3::zero; | ||
2757 | gAgent.setRegion(regionp); | 2761 | gAgent.setRegion(regionp); |
2758 | gObjectList.shiftObjects(shift_vector); | 2762 | gObjectList.shiftObjects(shift_vector); |
2759 | gAssetStorage->setUpstream(msg->getSender()); | 2763 | gAssetStorage->setUpstream(msg->getSender()); |