From d3178573bb57a7c5cc997bde90a62e8d6a1affa4 Mon Sep 17 00:00:00 2001
From: maxim_productengine <mnikolenko@productengine.com>
Date: Fri, 18 Oct 2019 17:23:28 +0300
Subject: [PATCH] SL-12156 FIXED [Project Copy/Paste] The prim's shape can be
 changed by pasting mesh parameters

---
 indra/newview/llpanelobject.cpp | 30 ++++++++++++++++++------------
 1 file changed, 18 insertions(+), 12 deletions(-)

diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp
index a382813de65..56aea7db5e6 100644
--- a/indra/newview/llpanelobject.cpp
+++ b/indra/newview/llpanelobject.cpp
@@ -2158,7 +2158,10 @@ void LLPanelObject::onCopyParams()
     mParamsClipboard["is_physical"] = objectp->flagUsePhysics();
 
     // Parametrics
-    getVolumeParams(mClipboardVolumeParams);
+    if (!objectp->isMesh())
+    {
+        getVolumeParams(mClipboardVolumeParams);
+    }
 
     LLVOVolume *volobjp = NULL;
     if (objectp && (objectp->getPCode() == LL_PCODE_VOLUME))
@@ -2188,19 +2191,22 @@ void LLPanelObject::onCopyParams()
     if (objectp->getParameterEntryInUse(LLNetworkData::PARAMS_SCULPT))
     {
         LLSculptParams *sculpt_params = (LLSculptParams *)objectp->getParameterEntry(LLNetworkData::PARAMS_SCULPT);
-
-        LLUUID texture_id = sculpt_params->getSculptTexture();
-        if (canCopyTexture(texture_id))
-        {
-            LL_INFOS() << "copu texture " << LL_ENDL;
-            mParamsClipboard["sculpt"]["id"] = texture_id;
-        }
-        else
+        
+        if (!objectp->isMesh())
         {
-            mParamsClipboard["sculpt"]["id"] = LLUUID(SCULPT_DEFAULT_TEXTURE);
-        }
+            LLUUID texture_id = sculpt_params->getSculptTexture();
+            if (canCopyTexture(texture_id))
+            {
+                LL_INFOS() << "copy texture " << LL_ENDL;
+                mParamsClipboard["sculpt"]["id"] = texture_id;
+            }
+            else
+            {
+                mParamsClipboard["sculpt"]["id"] = LLUUID(SCULPT_DEFAULT_TEXTURE);
+            }
 
-        mParamsClipboard["sculpt"]["type"] = sculpt_params->getSculptType();
+            mParamsClipboard["sculpt"]["type"] = sculpt_params->getSculptType();
+        }
     }
 
     // Light Source
-- 
GitLab