summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorCosmic Linden <cosmic@lindenlab.com>2023-08-14 17:18:52 -0700
committerCosmic Linden <cosmic@lindenlab.com>2023-08-14 17:18:52 -0700
commit465632214aad5e9979d12247149aa716a23d6899 (patch)
tree1ff690377748d0ca9681230f941f9bf6ff4b8e78 /indra/newview
parentf4d25ca795aed6ab4ad5d024d981ed7ed75710d4 (diff)
SL-20024: Fix inventory not marked dirty for drag and drop if copy permission bit is unset
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/lltooldraganddrop.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/indra/newview/lltooldraganddrop.cpp b/indra/newview/lltooldraganddrop.cpp
index 23a6634154..afcdb26f1a 100644
--- a/indra/newview/lltooldraganddrop.cpp
+++ b/indra/newview/lltooldraganddrop.cpp
@@ -1012,8 +1012,12 @@ BOOL LLToolDragAndDrop::handleDropMaterialProtections(LLViewerObject* hit_obj,
{
hit_obj->updateInventory(new_item, TASK_INVENTORY_ITEM_KEY, true);
}
- // TODO: Check to see if adding the item was successful; if not, then
- // we should return false here.
+ // Force the object to update and refetch its inventory so it has this asset.
+ hit_obj->dirtyInventory();
+ hit_obj->requestInventory();
+ // TODO: Check to see if adding the item was successful; if not, then
+ // we should return false here. This will requre a separate listener
+ // since without listener, we have no way to receive update
}
else if (!item->getPermissions().allowOperationBy(PERM_TRANSFER,
gAgent.getID()))