summaryrefslogtreecommitdiff
path: root/indra/llcommon
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2011-07-25 09:49:58 -0400
committerOz Linden <oz@lindenlab.com>2011-07-25 09:49:58 -0400
commitb8be8820ea52a77df6362179b1dda3fc4a305913 (patch)
tree061d59de4c1ccca88aa82ec7381790581f90bee9 /indra/llcommon
parente0728065251fbd5f45218eb94c056a92162eb54d (diff)
parenta5769e81263d6d004033b914c1cbf1a8296923d9 (diff)
close head created by 54e071a92450
Diffstat (limited to 'indra/llcommon')
-rw-r--r--indra/llcommon/llfasttimer_class.cpp8
-rw-r--r--indra/llcommon/llthread.cpp3
2 files changed, 10 insertions, 1 deletions
diff --git a/indra/llcommon/llfasttimer_class.cpp b/indra/llcommon/llfasttimer_class.cpp
index bd594b06cf..675eda2fc5 100644
--- a/indra/llcommon/llfasttimer_class.cpp
+++ b/indra/llcommon/llfasttimer_class.cpp
@@ -228,6 +228,14 @@ void LLFastTimer::DeclareTimer::updateCachedPointers()
// update cached pointer
it->mFrameState = &it->mTimer.getFrameState();
}
+
+ // also update frame states of timers on stack
+ LLFastTimer* cur_timerp = LLFastTimer::sCurTimerData.mCurTimer;
+ while(cur_timerp->mLastTimerData.mCurTimer != cur_timerp)
+ {
+ cur_timerp->mFrameState = &cur_timerp->mFrameState->mTimer->getFrameState();
+ cur_timerp = cur_timerp->mLastTimerData.mCurTimer;
+ }
}
//static
diff --git a/indra/llcommon/llthread.cpp b/indra/llcommon/llthread.cpp
index d9400fb5b3..4063cc730b 100644
--- a/indra/llcommon/llthread.cpp
+++ b/indra/llcommon/llthread.cpp
@@ -323,7 +323,8 @@ LLMutex::LLMutex(apr_pool_t *poolp) :
LLMutex::~LLMutex()
{
#if MUTEX_DEBUG
- llassert_always(!isLocked()); // better not be locked!
+ //bad assertion, the subclass LLSignal might be "locked", and that's OK
+ //llassert_always(!isLocked()); // better not be locked!
#endif
apr_thread_mutex_destroy(mAPRMutexp);
mAPRMutexp = NULL;