diff options
author | Nyx (Neal Orman) <nyx@lindenlab.com> | 2010-06-30 10:20:42 -0400 |
---|---|---|
committer | Nyx (Neal Orman) <nyx@lindenlab.com> | 2010-06-30 10:20:42 -0400 |
commit | 1c26bb6668e2011315f647359daf56a991c57261 (patch) | |
tree | cb296ba802c570303299c77f860e8cde8d4aa93b /indra/newview/llappearancemgr.h | |
parent | 4a3710501b1aeae90afbd48c7e3531c86f92517e (diff) |
EXT-8115 FIX outfits saved under 2.0 load with "unsaved changes"
Added code to save order information to outfits on loading / reverting them.
Order information is updated not only in COF, but also in base outfit folder.
This is only safe to do when we are explicitly loading a saved outfit,
as the COF may have deviated from the saved outfit.
This will also help fix order discrepencies in saved outfits that have been
manually modified through inventory operations.
Fix will only be effective after server 1.40 has rolled out. Tested results
on Aditi to verify effectiveness.
Code Reviewed by Seraph
Diffstat (limited to 'indra/newview/llappearancemgr.h')
-rw-r--r-- | indra/newview/llappearancemgr.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h index 61779d5c0e..5a556a4102 100644 --- a/indra/newview/llappearancemgr.h +++ b/indra/newview/llappearancemgr.h @@ -54,7 +54,7 @@ class LLAppearanceMgr: public LLSingleton<LLAppearanceMgr> public: typedef std::vector<LLInventoryModel::item_array_t> wearables_by_type_t; - void updateAppearanceFromCOF(); + void updateAppearanceFromCOF(bool update_base_outfit_ordering = false); bool needToSaveCOF(); void updateCOF(const LLUUID& category, bool append = false); void wearInventoryCategory(LLInventoryCategory* category, bool copy, bool append); @@ -170,7 +170,7 @@ public: //Check ordering information on wearables stored in links' descriptions and update if it is invalid // COF is processed if cat_id is not specified - void updateClothingOrderingInfo(LLUUID cat_id = LLUUID::null); + void updateClothingOrderingInfo(LLUUID cat_id = LLUUID::null, bool update_base_outfit_ordering = false); bool isOutfitLocked() { return mOutfitLocked; } @@ -224,12 +224,13 @@ public: class LLUpdateAppearanceOnDestroy: public LLInventoryCallback { public: - LLUpdateAppearanceOnDestroy(); + LLUpdateAppearanceOnDestroy(bool update_base_outfit_ordering = false); virtual ~LLUpdateAppearanceOnDestroy(); /* virtual */ void fire(const LLUUID& inv_item); private: U32 mFireCount; + bool mUpdateBaseOrder; }; |