The problem was caused by an outdated message name stored in LLInventoryObserver::mMessageName and not updated properly in LLInventoryModel::notifyObservers().
The message name used in LLInventoryAddedObserver::changed() was the name of the message most recently passed by LLInventoryModel::notifyObservers(), instead of the name of the latest actually received message. Using the most recent message name in this case fixed the problem.
I couldn't reproduce the problem (it has happened for only two users, both running MacOSX),
but from what I see in the logs, it might have been caused by (or related to) NULL COF items.
I haven't found out how they appear nor what exactly causes the crash, but just for any
case I added a check to make sure we don't try to update wearables ordering info for such items.
Reviewed by Sergey Litovchuk at https://codereview.productengine.com/secondlife/r/876/
--HG--
branch : product-engine
There were two issues:
* "Male - Get lost" and "Female - Get lost" gestures have by 2 spaces before "-" in their names.
* Folders were not processed to be localize. This was not implemented correctly in EXT-7051.
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/753/
--HG--
branch : product-engine
- added check on whether avatar name exists in Name Cache before using its getter with callback (which raises notifyObservers).
Reviewed by Brad Payne at https://codereview.productengine.com/secondlife/r/526/
--HG--
branch : product-engine
Resident-submitted patch, cleaned up so it matches style and compiles/builds
well. Appears to work for stated goals but will need some more UI work to
ensure consistency.
WIP checkin, will be code reviewed before pushing.
LLObjectBridge::openItem() was concurrency modified.
Applied behavior that was changed in c3220f7f7699 according to
VWR-13743 FIXED Change Request: Change double click action for inventory wearables
DEV-33391 FIXED Change Request: Change double click action for inventory wearables
--HG--
branch : product-engine
Superficial header file cleanup
Lots of moving functions around and recategorizing in LLInventoryModel.h
Removed some obsolete functions, changed scoping of others
Moved some static functions from LLInventoryModel into llinventoryfunctions.h
Minor cleanup to start using DEFAULT_SORT_ORDER versus plain text "InventorySortOrder" in a few plaecs in the code. Makes this sorting code a lot easier to debug.
Related to major bug EXT-3985 [BSI] Landmarks created in Viewer 2.0 show up with 1@ in Viewer 1.23.x
Removed auto-cleanup patch to repair Lanmarks in Favorite bar (remove LM Sort prefixes)
--HG--
branch : product-engine
-- implemented patch to remove LM prefixes from landmarks' names
*NOTE: It will be unnecessary after the first successful session in viewer 2.0.
Can be removed before public release.
Implementation details:
At the first run with this patch it patches all cached landmarks: removes LM sort prefixes and
updates them on the viewer and server sides.
Also it calls fetching agent's inventory to process not yet loaded landmarks too.
If fetching is successfully done it will store special per-agent empty file-marker
in the user temporary folder (where cached inventory is loaded) while caching agent's inventory.
After that in will not affect the viewer until cached marker is removed.
--HG--
branch : product-engine
-- reason: there was two places where identical resorting of Favorite landmarks functionality was implemented: InventoryBridge & Favorite bar.
It was not impelnmented properly in favorites bar: LLInventoryObserver::SORT flag was not set after d-n-d.
-- fix: moved identical functionality to update & save order of Favorite landmarks from these places to Inventory Panel
--HG--
branch : product-engine
-- refactoring: move functionality to rearange Favorite landmarks from Inventory Folder bridge to Inventory model
-- improved logic to place dragged landmark before target one.
--HG--
branch : product-engine