diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2024-06-17 22:50:50 +0300 | 
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2024-06-18 13:39:53 +0300 | 
| commit | 4d0b9805843b4b09411825b5ad8989fcdfc9595b (patch) | |
| tree | a997cdde6be8cd6ed531e450dfb736c5d2b61436 | |
| parent | 574dc7851baf2de75f661d5b86d791efe03a7d17 (diff) | |
viewer#1772 Teleport History landing going higher and higher
| -rw-r--r-- | indra/newview/llteleporthistorystorage.cpp | 6 | 
1 files changed, 6 insertions, 0 deletions
| diff --git a/indra/newview/llteleporthistorystorage.cpp b/indra/newview/llteleporthistorystorage.cpp index fa4e92e209..6a7ebaf8d6 100644 --- a/indra/newview/llteleporthistorystorage.cpp +++ b/indra/newview/llteleporthistorystorage.cpp @@ -127,6 +127,12 @@ void LLTeleportHistoryStorage::addItem(const std::string title, const LLVector3d      S32 removed_index = -1;      if (item_iter != mItems.end())      { +        // When teleporting via history it's possible that there can be +        // an offset applied to the position, so each new teleport can +        // be a meter higher than the last. +        // Avoid it by preserving original position. +        item.mGlobalPos = item_iter->mGlobalPos; +          removed_index = item_iter - mItems.begin();          mItems.erase(item_iter);      } | 
