diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index e2289f821eb9194e46d0c8862cd950e94708ff06..e459109d6a1d545a1becd3503aafca1270c24ee2 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -3751,10 +3751,10 @@ void LLPipeline::renderHighlights() for (U32 i = 0; i < count; i++) { LLFace *facep = mSelectedFaces[i]; - if (!facep || facep->getDrawable()->isDead()) + if (!facep || (facep->getDrawable() && facep->getDrawable()->isDead())) { - LL_ERRS() << "Bad face on selection" << LL_ENDL; - return; + LL_WARNS() << "Bad face on selection" << LL_ENDL; + continue; } facep->renderSelected(mFaceSelectImagep, color); @@ -3799,10 +3799,10 @@ void LLPipeline::renderHighlights() for (U32 i = 0; i < count; i++) { LLFace *facep = mSelectedFaces[i]; - if (!facep || facep->getDrawable()->isDead()) + if (!facep || (facep->getDrawable() && facep->getDrawable()->isDead())) { - LL_ERRS() << "Bad face on selection" << LL_ENDL; - return; + LL_WARNS() << "Bad face on selection" << LL_ENDL; + continue; } facep->renderSelected(mFaceSelectImagep, color); @@ -3829,10 +3829,10 @@ void LLPipeline::renderHighlights() for (U32 i = 0; i < count; i++) { LLFace *facep = mSelectedFaces[i]; - if (!facep || facep->getDrawable()->isDead()) + if (!facep || (facep->getDrawable() && facep->getDrawable()->isDead())) { - LL_ERRS() << "Bad face on selection" << LL_ENDL; - return; + LL_WARNS() << "Bad face on selection" << LL_ENDL; + continue; } facep->renderSelected(mFaceSelectImagep, color);