diff --git a/doc/contributions.txt b/doc/contributions.txt index 3851e62cfbdae7aa8137087a910a1adc6ae8fc21..6370e14f48d8c21993e0c351395569dfdc87072b 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -625,6 +625,7 @@ Jonathan Yap STORM-1809 STORM-1793 STORM-1810 + STORM-1852 Kadah Coba STORM-1060 Jondan Lundquist diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index e590f29a9a3f8b798cf277e26725fbf73b6a6977..7c6ca90890722eb67a1052fcc30602aec0236bc2 100644 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -2382,10 +2382,11 @@ void LLViewerObject::interpolateLinearMotion(const F64 & time, const F32 & dt) { // This will put the object underground, but we can't tell if it will stop // at ground level or not min_height = LLWorld::getInstance()->getMinAllowedZ(this, new_pos_global); + // Cap maximum height + new_pos.mV[VZ] = llmin(LLWorld::getInstance()->getRegionMaxHeight(), new_pos.mV[VZ]); } new_pos.mV[VZ] = llmax(min_height, new_pos.mV[VZ]); - new_pos.mV[VZ] = llmin(LLWorld::getInstance()->getRegionMaxHeight(), new_pos.mV[VZ]); // Check to see if it's going off the region LLVector3 temp(new_pos);