summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelface.cpp
diff options
context:
space:
mode:
authorMnikolenko Productengine <mnikolenko@productengine.com>2022-04-15 22:14:38 +0300
committerMnikolenko Productengine <mnikolenko@productengine.com>2022-04-15 22:14:38 +0300
commitbbdbd6c2dd79adc4749e24c88c9f04755a4b12a1 (patch)
tree4f27b7f1f8edf304227e4d3d1c0755ef342cb61e /indra/newview/llpanelface.cpp
parent7f315b1552dd01e0ee2ff58e84f1fc87fa675cdf (diff)
SL-17204 FIXED The texture with full permissions is settled on the prim after copying texture from the object with texture with no transfer permission
Diffstat (limited to 'indra/newview/llpanelface.cpp')
-rw-r--r--indra/newview/llpanelface.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/indra/newview/llpanelface.cpp b/indra/newview/llpanelface.cpp
index 2ac5022695..f50f587f8f 100644
--- a/indra/newview/llpanelface.cpp
+++ b/indra/newview/llpanelface.cpp
@@ -2873,7 +2873,12 @@ void LLPanelFace::onCopyTexture()
// as result it is Hightly unreliable, leaves little control to user, borderline hack
// but there are little options to preserve permissions - multiple inventory
// items might reference same asset and inventory search is expensive.
- item_id = get_copy_free_item_by_asset_id(id);
+ bool no_transfer = false;
+ if (objectp->getInventoryItemByAsset(id))
+ {
+ no_transfer = !objectp->getInventoryItemByAsset(id)->getIsFullPerm();
+ }
+ item_id = get_copy_free_item_by_asset_id(id, no_transfer);
// record value to avoid repeating inventory search when possible
asset_item_map[id] = item_id;
}