parent
b4b52e4717
commit
74fe406916
|
|
@ -864,7 +864,7 @@ LLMeshRepoThread::~LLMeshRepoThread()
|
|||
|
||||
while (!mSkinInfoQ.empty())
|
||||
{
|
||||
delete mSkinInfoQ.front();
|
||||
llassert(mSkinInfoQ.front()->getNumRefs() == 1);
|
||||
mSkinInfoQ.pop_front();
|
||||
}
|
||||
|
||||
|
|
@ -2058,13 +2058,15 @@ bool LLMeshRepoThread::skinInfoReceived(const LLUUID& mesh_id, U8* data, S32 dat
|
|||
LLSkinningUtil::initJointNums(info, gAgentAvatarp);
|
||||
}
|
||||
|
||||
// remember the skin info in the background thread so we can use it
|
||||
// copy the skin info for the background thread so we can use it
|
||||
// to calculate per-joint bounding boxes when volumes are loaded
|
||||
mSkinMap[mesh_id] = info;
|
||||
mSkinMap[mesh_id] = new LLMeshSkinInfo(*info);
|
||||
|
||||
{
|
||||
// Move the LLPointer in to the skin info queue to avoid reference
|
||||
// count modification after we leave the lock
|
||||
LLMutexLock lock(mMutex);
|
||||
mSkinInfoQ.push_back(info);
|
||||
mSkinInfoQ.emplace_back(std::move(info));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue