diff options
| author | Don Kjer <don@lindenlab.com> | 2013-03-13 08:46:59 +0000 |
|---|---|---|
| committer | Don Kjer <don@lindenlab.com> | 2013-03-13 08:46:59 +0000 |
| commit | 662d67e3b5f1cbf5e894f0e4af37a31faacd67e3 (patch) | |
| tree | 93af533d9c1e9c027c5abc56a5de4ee207591b23 /indra/newview/lldrawable.cpp | |
| parent | f945415210f0e18c2c6d941fda6b7d45cb0f06f1 (diff) | |
| parent | 0ebcdce82bffae18459ed541f05906f625ef47e2 (diff) | |
Merging LLCURL::Responder changes with CHUI changes. Fixed gcc 4.6 compile failures
Diffstat (limited to 'indra/newview/lldrawable.cpp')
| -rw-r--r-- | indra/newview/lldrawable.cpp | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp index 24413caf6a..bb1d263670 100644 --- a/indra/newview/lldrawable.cpp +++ b/indra/newview/lldrawable.cpp @@ -441,7 +441,7 @@ void LLDrawable::makeActive() } llassert(isAvatar() || isRoot() || mParent->isActive()); -} + } void LLDrawable::makeStatic(BOOL warning_enabled) @@ -455,7 +455,7 @@ void LLDrawable::makeStatic(BOOL warning_enabled) //drawable became static with active parent, not acceptable llassert(mParent.isNull() || !mParent->isActive() || !warning_enabled); - + LLViewerObject::const_child_list_t& child_list = mVObjp->getChildren(); for (LLViewerObject::child_list_t::const_iterator iter = child_list.begin(); iter != child_list.end(); iter++) @@ -576,6 +576,12 @@ F32 LLDrawable::updateXform(BOOL undamped) mVObjp->dirtySpatialGroup(); } } + else if (!isRoot() && + ((dist_vec_squared(old_pos, target_pos) > 0.f) + || (1.f - dot(old_rot, target_rot)) > 0.f)) + { //fix for BUG-840, MAINT-2275, MAINT-1742, MAINT-2247 + gPipeline.markRebuild(this, LLDrawable::REBUILD_POSITION, TRUE); + } else if (!getVOVolume() && !isAvatar()) { movePartition(); @@ -641,20 +647,10 @@ BOOL LLDrawable::updateMove() { return FALSE; } - + makeActive(); - BOOL done; - - if (isState(MOVE_UNDAMPED)) - { - done = updateMoveUndamped(); - } - else - { - done = updateMoveDamped(); - } - return done; + return isState(MOVE_UNDAMPED) ? updateMoveUndamped() : updateMoveDamped(); } BOOL LLDrawable::updateMoveUndamped() |
