diff options
author | Leyla Farazha <leyla@lindenlab.com> | 2010-11-19 16:13:51 -0800 |
---|---|---|
committer | Leyla Farazha <leyla@lindenlab.com> | 2010-11-19 16:13:51 -0800 |
commit | 7a74f64d5eda050da0d966b0fa3e76b4b54888fa (patch) | |
tree | b3cee2fdcf01e11cf13dca58f56c3b1d0e804739 /indra/llcommon/llthread.cpp | |
parent | b48dad17260a7f5fbfc4d0548b4386d62efc2e5e (diff) | |
parent | 9d3174c0386e6eefba1949075971ce7f75571394 (diff) |
Merge
Diffstat (limited to 'indra/llcommon/llthread.cpp')
-rw-r--r-- | indra/llcommon/llthread.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/indra/llcommon/llthread.cpp b/indra/llcommon/llthread.cpp index d7b7c3699c..148aaf8aed 100644 --- a/indra/llcommon/llthread.cpp +++ b/indra/llcommon/llthread.cpp @@ -147,16 +147,20 @@ void LLThread::shutdown() { // This thread just wouldn't stop, even though we gave it time llwarns << "LLThread::~LLThread() exiting thread before clean exit!" << llendl; + // Put a stake in its heart. + apr_thread_exit(mAPRThreadp, -1); return; } mAPRThreadp = NULL; } delete mRunCondition; + mRunCondition = 0; - if (mIsLocalPool) + if (mIsLocalPool && mAPRPoolp) { apr_pool_destroy(mAPRPoolp); + mAPRPoolp = 0; } } |