summaryrefslogtreecommitdiff
path: root/indra/newview/llviewerparcelmgr.cpp
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2014-10-13 17:13:15 -0400
committerOz Linden <oz@lindenlab.com>2014-10-13 17:13:15 -0400
commit852426d71e5b192a003d01d128799c2b702c69b1 (patch)
tree66a31f735c3dd92f557a9026cf359ef000d548e9 /indra/newview/llviewerparcelmgr.cpp
parent08a4d7a27743792a644c46f8163d973d0524cd79 (diff)
parent788ce7a8cdbbbf98566ce75ec281ec00c21dc6d8 (diff)
merge changes for 3.7.17-release
Diffstat (limited to 'indra/newview/llviewerparcelmgr.cpp')
-rwxr-xr-xindra/newview/llviewerparcelmgr.cpp18
1 files changed, 11 insertions, 7 deletions
diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp
index cdb08f4707..7c94442f09 100755
--- a/indra/newview/llviewerparcelmgr.cpp
+++ b/indra/newview/llviewerparcelmgr.cpp
@@ -117,6 +117,7 @@ LLViewerParcelMgr::LLViewerParcelMgr()
mHoverRequestResult(0),
mHoverWestSouth(),
mHoverEastNorth(),
+ mTeleportInProgressPosition(),
mRenderCollision(FALSE),
mRenderSelection(TRUE),
mCollisionBanned(0),
@@ -1320,12 +1321,6 @@ void LLViewerParcelMgr::setHoverParcel(const LLVector3d& pos)
static U32 last_west, last_south;
- // only request parcel info when tooltip is shown
- if (!gSavedSettings.getBOOL("ShowLandHoverTip"))
- {
- return;
- }
-
// only request parcel info if position has changed outside of the
// last parcel grid step
U32 west_parcel_step = (U32) floor( pos.mdV[VX] / PARCEL_GRID_STEP_METERS );
@@ -1585,7 +1580,15 @@ void LLViewerParcelMgr::processParcelProperties(LLMessageSystem *msg, void **use
if (instance->mTeleportInProgress)
{
instance->mTeleportInProgress = FALSE;
- instance->mTeleportFinishedSignal(gAgent.getPositionGlobal(), false);
+ if(instance->mTeleportInProgressPosition.isNull())
+ {
+ //initial update
+ instance->mTeleportFinishedSignal(gAgent.getPositionGlobal(), false);
+ }
+ else
+ {
+ instance->mTeleportFinishedSignal(instance->mTeleportInProgressPosition, false);
+ }
}
}
}
@@ -2494,6 +2497,7 @@ void LLViewerParcelMgr::onTeleportFinished(bool local, const LLVector3d& new_pos
// Non-local teleport (inter-region or between different parcels of the same region).
// The agent parcel data has not been updated yet.
// Let's wait for the update and then emit the signal.
+ mTeleportInProgressPosition = new_pos;
mTeleportInProgress = TRUE;
}
}