From df880791b81c5d0ebe9b65011107e867ad042ac2 Mon Sep 17 00:00:00 2001
From: Alexander Gavriliuk <alexandrgproductengine@lindenlab.com>
Date: Wed, 26 Jul 2023 17:53:45 +0200
Subject: [PATCH] SL-18619 Eyes not rendering in Shape floater thumbnails

---
 indra/llappearance/llavatarappearance.cpp |  1 -
 indra/newview/lldrawpoolavatar.cpp        | 12 ++++++------
 indra/newview/llvoavatar.cpp              |  5 -----
 3 files changed, 6 insertions(+), 12 deletions(-)

diff --git a/indra/llappearance/llavatarappearance.cpp b/indra/llappearance/llavatarappearance.cpp
index 7946a3e7059..18b03c1f896 100644
--- a/indra/llappearance/llavatarappearance.cpp
+++ b/indra/llappearance/llavatarappearance.cpp
@@ -1050,7 +1050,6 @@ BOOL LLAvatarAppearance::loadSkeletonNode ()
 	mRoot->addChild(mMeshLOD[MESH_ID_UPPER_BODY]);
 	mRoot->addChild(mMeshLOD[MESH_ID_LOWER_BODY]);
 	mRoot->addChild(mMeshLOD[MESH_ID_SKIRT]);
-	mRoot->addChild(mMeshLOD[MESH_ID_HEAD]);
 
 	LLAvatarJoint *skull = (LLAvatarJoint*)mRoot->findJoint("mSkull");
 	if (skull)
diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp
index 4ffa903ccac..3160f693b2c 100644
--- a/indra/newview/lldrawpoolavatar.cpp
+++ b/indra/newview/lldrawpoolavatar.cpp
@@ -183,8 +183,8 @@ void LLDrawPoolAvatar::beginDeferredPass(S32 pass)
 	is_deferred_render = true;
 	
 	if (LLPipeline::sImpostorRender)
-	{ //impostor pass does not have rigid or impostor rendering
-		pass += 2;
+	{ //impostor pass does not have impostor rendering
+		++pass;
 	}
 
 	switch (pass)
@@ -210,7 +210,7 @@ void LLDrawPoolAvatar::endDeferredPass(S32 pass)
 
 	if (LLPipeline::sImpostorRender)
 	{
-		pass += 2;
+		++pass;
 	}
 
 	switch (pass)
@@ -431,7 +431,7 @@ void LLDrawPoolAvatar::render(S32 pass)
     LL_PROFILE_ZONE_SCOPED_CATEGORY_AVATAR;
 	if (LLPipeline::sImpostorRender)
 	{
-		renderAvatars(NULL, pass+2);
+		renderAvatars(NULL, ++pass);
 		return;
 	}
 
@@ -446,7 +446,7 @@ void LLDrawPoolAvatar::beginRenderPass(S32 pass)
 
 	if (LLPipeline::sImpostorRender)
 	{ //impostor render does not have impostors or rigid rendering
-		pass += 2;
+		++pass;
 	}
 
 	switch (pass)
@@ -474,7 +474,7 @@ void LLDrawPoolAvatar::endRenderPass(S32 pass)
 
 	if (LLPipeline::sImpostorRender)
 	{
-		pass += 2;		
+		++pass;
 	}
 
 	switch (pass)
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index 305c489cc8a..e77530ecbd2 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -5230,11 +5230,6 @@ U32 LLVOAvatar::renderRigid()
 	{
 		return 0;
 	}
-	
-	if (!mIsBuilt)
-	{
-		return 0;
-	}
 
 	bool should_alpha_mask = shouldAlphaMask();
 	LLGLState test(GL_ALPHA_TEST, should_alpha_mask);
-- 
GitLab