From 6e32993c8787e7ba569d5a9ebcdb994c2ba03671 Mon Sep 17 00:00:00 2001
From: Maxim Nikolenko <maximnproductengine@lindenlab.com>
Date: Tue, 26 Sep 2023 13:59:31 +0300
Subject: SL-20338 FIXED Texture tab Material drop-down does not change if same
 numbered face is selected

---
 indra/newview/llpanelface.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/indra/newview/llpanelface.cpp b/indra/newview/llpanelface.cpp
index e1f08915fa..1428f7fe23 100644
--- a/indra/newview/llpanelface.cpp
+++ b/indra/newview/llpanelface.cpp
@@ -1056,6 +1056,7 @@ void LLPanelFace::updateUI(bool force_set_values /*false*/)
         LLSelectedTEMaterial::getSpecularID(specmap_id, identical_spec);
 
         static S32 selected_te = -1;
+        static LLUUID prev_obj_id;
         if ((LLToolFace::getInstance() == LLToolMgr::getInstance()->getCurrentTool()) && 
             !LLSelectMgr::getInstance()->getSelection()->isMultipleTESelected()) 
         {
@@ -1070,7 +1071,8 @@ void LLPanelFace::updateUI(bool force_set_values /*false*/)
                 }
             }
 
-            if (new_selection != selected_te)
+            if ((new_selection != selected_te)
+                || (prev_obj_id != objectp->getID()))
             {
                 bool te_has_media = objectp->getTE(new_selection) && objectp->getTE(new_selection)->hasMedia();
                 bool te_has_pbr = objectp->getRenderMaterialID(new_selection).notNull();
@@ -1088,6 +1090,7 @@ void LLPanelFace::updateUI(bool force_set_values /*false*/)
                     mComboMatMedia->selectNthItem(MATMEDIA_MATERIAL);
                 }
                 selected_te = new_selection;
+                prev_obj_id = objectp->getID();
             }
         }
 
-- 
cgit v1.2.3