diff options
| author | Andrey Lihatskiy <alihatskiy@productengine.com> | 2026-09-14 12:35:52 +0300 |
|---|---|---|
| committer | Andrey Lihatskiy <118752495+marchcat@users.noreply.github.com> | 2026-09-14 14:00:20 +0300 |
| commit | 28f4e9b352a34d4fe551e13d37d3967b41bd5893 (patch) | |
| tree | 04343a55e474e804f90ac32b68454a5045e2a110 /indra/newview | |
| parent | 01f554d1a0a461f1ad3d7321566a04e7987038df (diff) | |
#6310 Harden inventory view lifetime handling
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llinventorypanel.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 301a0a0cc9..92cf302a8d 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -602,8 +602,8 @@ void LLInventoryPanel::itemChanged(const LLUUID& item_id, U32 mask, const LLInve if (model_item && view_item && viewmodel_item) { const LLUUID idp = viewmodel_item->getUUID(); - view_item->destroyView(); removeItemID(idp); + view_item->destroyView(); } LLInventoryObject const* objectp = mInventory->getObject(item_id); @@ -709,6 +709,7 @@ void LLInventoryPanel::itemChanged(const LLUUID& item_id, U32 mask, const LLInve LLFolderViewModelItem* old_parent_vmi = old_parent->getViewModelItem(); LLFolderViewModelItemInventory* viewmodel_folder = static_cast<LLFolderViewModelItemInventory*>(old_parent_vmi); LLFolderViewFolder* new_parent = getFolderByID(model_item->getParentUUID()); + const bool was_favorite = view_item->isFavorite(); if (old_parent != new_parent // Item has been moved. && (new_parent != NULL || !isInRootContent(item_id, view_item)) // item is not or shouldn't be in root content @@ -748,7 +749,7 @@ void LLInventoryPanel::itemChanged(const LLUUID& item_id, U32 mask, const LLInve old_parent_vmi->dirtyDescendantsFilter(); } - if (view_item->isFavorite()) + if (was_favorite) { if (old_parent) { |
