From d390b6c4ad3ec559a4f77c9c24e6b7746eee982a Mon Sep 17 00:00:00 2001
From: Rye Mutt <rye@alchemyviewer.org>
Date: Tue, 21 Nov 2023 14:54:34 -0500
Subject: [PATCH] Better fix for selection crash

---
 indra/newview/pipeline.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

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