diff options
author | Euclid Linden <euclid@lindenlab.com> | 2021-11-16 18:58:21 +0000 |
---|---|---|
committer | Euclid Linden <euclid@lindenlab.com> | 2021-11-16 18:58:21 +0000 |
commit | f2f7034f2d358886ddb4137a7b5ab3c3f5717a4f (patch) | |
tree | f5098b9532f6d7b757b9a8fb345e7aa5e7e69108 /indra/newview/llviewertexture.cpp | |
parent | e95b7efd0b4469ce18bce3bc0261ecc9be06ea9c (diff) | |
parent | 353329c2c2e9e8fa1ff273de2016c9e155585f45 (diff) |
Merged in DV546-merge-6.5.1 (pull request #776)
DRTVWR-546 merge up to 6.5.1
Diffstat (limited to 'indra/newview/llviewertexture.cpp')
-rw-r--r-- | indra/newview/llviewertexture.cpp | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index fbc5830a5c..e6ac701644 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -3586,11 +3586,22 @@ BOOL LLViewerMediaTexture::findFaces() for(; iter != obj_list->end(); ++iter) { LLVOVolume* obj = *iter; - if(obj->mDrawable.isNull()) - { - ret = FALSE; - continue; - } + if (obj->isDead()) + { + // Isn't supposed to happen, objects are supposed to detach + // themselves on markDead() + // If this happens, viewer is likely to crash + llassert(0); + LL_WARNS() << "Dead object in mMediaImplp's object list" << LL_ENDL; + ret = FALSE; + continue; + } + + if (obj->mDrawable.isNull() || obj->mDrawable->isDead()) + { + ret = FALSE; + continue; + } S32 face_id = -1; S32 num_faces = obj->mDrawable->getNumFaces(); |