FIRE-9506 crashfix: linked_item is null in case of temporary attachments. Also rlvPredCanRemoveItem will return false, so you wouldn't be able to detach it if RLVa is enabled.
parent
9636c78195
commit
4c878b49e0
|
|
@ -3910,13 +3910,14 @@ void LLAppearanceMgr::removeItemsFromAvatar(const uuid_vec_t& ids_to_remove)
|
|||
for (uuid_vec_t::const_iterator it = ids_to_remove.begin(); it != ids_to_remove.end(); ++it)
|
||||
{
|
||||
const LLInventoryItem* linked_item = gInventory.getLinkedItem(*it);
|
||||
if ( (rlv_handler_t::isEnabled()) && (!rlvPredCanRemoveItem(linked_item)) )
|
||||
if (linked_item && (rlv_handler_t::isEnabled()) && (!rlvPredCanRemoveItem(linked_item)) )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
fUpdateAppearance = true;
|
||||
removeCOFItemLinks(linked_item->getUUID());
|
||||
const LLUUID& linked_item_id = gInventory.getLinkedItemID(*it);
|
||||
removeCOFItemLinks(linked_item_id);
|
||||
}
|
||||
|
||||
if (fUpdateAppearance)
|
||||
|
|
@ -3937,17 +3938,15 @@ void LLAppearanceMgr::removeItemFromAvatar(const LLUUID& id_to_remove)
|
|||
{
|
||||
// [RLVa:KB] - Checked: 2013-02-12 (RLVa-1.4.8)
|
||||
const LLInventoryItem* linked_item = gInventory.getLinkedItem(id_to_remove);
|
||||
if ( (rlv_handler_t::isEnabled()) && (!rlvPredCanRemoveItem(linked_item)) )
|
||||
|
||||
if (linked_item && (rlv_handler_t::isEnabled()) && (!rlvPredCanRemoveItem(linked_item)) )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
removeCOFItemLinks(linked_item->getUUID());
|
||||
updateAppearanceFromCOF();
|
||||
// [/RLVA:KB]
|
||||
// LLUUID linked_item_id = gInventory.getLinkedItemID(id_to_remove);
|
||||
// removeCOFItemLinks(linked_item_id);
|
||||
// updateAppearanceFromCOF();
|
||||
LLUUID linked_item_id = gInventory.getLinkedItemID(id_to_remove);
|
||||
removeCOFItemLinks(linked_item_id);
|
||||
updateAppearanceFromCOF();
|
||||
}
|
||||
|
||||
bool LLAppearanceMgr::moveWearable(LLViewerInventoryItem* item, bool closer_to_body)
|
||||
|
|
|
|||
Loading…
Reference in New Issue