aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llviewermessage.cpp
diff options
context:
space:
mode:
authorJacek Antonelli2010-06-26 14:36:18 -0500
committerJacek Antonelli2010-06-26 19:01:38 -0500
commit362e10f6c08a68624ca6f9acffb1136635c53915 (patch)
treeffbb1baf495ba112c4a7d3d1b5a7b9c9312a943e /linden/indra/newview/llviewermessage.cpp
parentAdded Windows installer to the artwork package (note: still needs some tinker... (diff)
downloadmeta-impy-362e10f6c08a68624ca6f9acffb1136635c53915.zip
meta-impy-362e10f6c08a68624ca6f9acffb1136635c53915.tar.gz
meta-impy-362e10f6c08a68624ca6f9acffb1136635c53915.tar.bz2
meta-impy-362e10f6c08a68624ca6f9acffb1136635c53915.tar.xz
Unreverted an OpenSim teleport fix from cad41f1.
Prevents the viewer from being told by OpenSim to teleport to the same region you are already in, which causes bad issues. It was reverted in 932dd4d but should have been kept.
Diffstat (limited to '')
-rw-r--r--linden/indra/newview/llviewermessage.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/linden/indra/newview/llviewermessage.cpp b/linden/indra/newview/llviewermessage.cpp
index ecbe0ef..b1c316d 100644
--- a/linden/indra/newview/llviewermessage.cpp
+++ b/linden/indra/newview/llviewermessage.cpp
@@ -3331,14 +3331,18 @@ void process_agent_movement_complete(LLMessageSystem* msg, void**)
3331 3331
3332 // set our upstream host the new simulator and shuffle things as 3332 // set our upstream host the new simulator and shuffle things as
3333 // appropriate. 3333 // appropriate.
3334 LLVector3 shift_vector = regionp->getPosRegionFromGlobal( 3334 // Sometimes OpenSim will get here but still fail on a teleport -- MC
3335 gAgent.getRegion()->getOriginGlobal()); 3335 if (regionp != gAgent.getRegion())
3336 gAgent.setRegion(regionp); 3336 {
3337 gObjectList.shiftObjects(shift_vector); 3337 LLVector3 shift_vector = regionp->getPosRegionFromGlobal(
3338 gAssetStorage->setUpstream(msg->getSender()); 3338 gAgent.getRegion()->getOriginGlobal());
3339 gCacheName->setUpstream(msg->getSender()); 3339 gAgent.setRegion(regionp);
3340 gViewerThrottle.sendToSim(); 3340 gObjectList.shiftObjects(shift_vector);
3341 gViewerWindow->sendShapeToSim(); 3341 gAssetStorage->setUpstream(msg->getSender());
3342 gCacheName->setUpstream(msg->getSender());
3343 gViewerThrottle.sendToSim();
3344 gViewerWindow->sendShapeToSim();
3345 }
3342 3346
3343 bool is_teleport = gAgent.getTeleportState() == LLAgent::TELEPORT_MOVING; 3347 bool is_teleport = gAgent.getTeleportState() == LLAgent::TELEPORT_MOVING;
3344 3348