From 5759be7cdf0f8fe0745265b85bab8c37bd2335be Mon Sep 17 00:00:00 2001 From: Andrey Kleshchev Date: Wed, 17 Aug 2022 18:06:51 +0300 Subject: SL-17834 MP window freezes when loading items from Inventory 1. Do not process all marketpalce changes at once, schedule them for later 2. Do not notifyObservers from notifyObservers --- indra/newview/llinventorymodel.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'indra/newview/llinventorymodel.cpp') diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index 37500176ea..ace4de928e 100644 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp @@ -1838,7 +1838,8 @@ void LLInventoryModel::addChangedMask(U32 mask, const LLUUID& referent) } // Fix me: From DD-81, probably shouldn't be here, instead - // should be somewhere in an observer + // should be somewhere in an observer or in + // LLMarketplaceInventoryObserver::onIdleProcessQueue update_marketplace_category(referent, false); if (mask & LLInventoryObserver::ADD) -- cgit v1.2.3 From b2ad2f064504688e31a67366a9d64cea8a9822fe Mon Sep 17 00:00:00 2001 From: Andrey Kleshchev Date: Thu, 6 Oct 2022 22:42:49 +0300 Subject: SL-18297 A freeze while checking marketplace for errors --- indra/newview/llinventorymodel.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'indra/newview/llinventorymodel.cpp') diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index b1ecf8e928..1b794d7525 100644 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp @@ -1851,10 +1851,13 @@ void LLInventoryModel::addChangedMask(U32 mask, const LLUUID& referent) mChangedItemIDs.insert(referent); } - // Fix me: From DD-81, probably shouldn't be here, instead - // should be somewhere in an observer or in - // LLMarketplaceInventoryObserver::onIdleProcessQueue - update_marketplace_category(referent, false); + if (mask != LLInventoryObserver::LABEL) + { + // Fix me: From DD-81, probably shouldn't be here, instead + // should be somewhere in an observer or in + // LLMarketplaceInventoryObserver::onIdleProcessQueue + update_marketplace_category(referent, false); + } if (mask & LLInventoryObserver::ADD) { -- cgit v1.2.3 From 8e4cfe8aed308675e1507321f4daffc7994fa1e3 Mon Sep 17 00:00:00 2001 From: Rye Mutt Date: Wed, 19 Oct 2022 19:43:01 -0400 Subject: Fix use after free in inventory object deletion --- indra/newview/llinventorymodel.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llinventorymodel.cpp') diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index 216a9f4c94..b50e8431a1 100644 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp @@ -1691,11 +1691,11 @@ void LLInventoryModel::deleteObject(const LLUUID& id, bool fix_broken_links, boo // Can't have links to links, so there's no need for this update // if the item removed is a link. Can also skip if source of the // update is getting broken link info separately. - obj = NULL; // delete obj if (fix_broken_links && !is_link_type) { updateLinkedObjectsFromPurge(id); } + obj = nullptr; // delete obj if (do_notify_observers) { notifyObservers(); -- cgit v1.2.3 From 91f9f2e9f789d0418107ed5d428e8f0be3a060e2 Mon Sep 17 00:00:00 2001 From: Andrey Lihatskiy Date: Thu, 27 Oct 2022 23:08:09 +0300 Subject: DRTVWR-570 Mac build fix: unused variables cleanup --- indra/newview/llinventorymodel.cpp | 1 - 1 file changed, 1 deletion(-) (limited to 'indra/newview/llinventorymodel.cpp') diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index 06351dc540..87fd91b23a 100644 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp @@ -2711,7 +2711,6 @@ void LLInventoryModel::buildParentChildMap() // some accounts has pbroken inventory root folders std::string name = "My Inventory"; - LLUUID prev_root_id = mRootFolderID; for (parent_cat_map_t::const_iterator it = mParentChildCategoryTree.begin(), it_end = mParentChildCategoryTree.end(); it != it_end; ++it) { -- cgit v1.2.3