From 8332550c6dc2a159c9c5812819e167578eda1269 Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Mon, 8 Feb 2010 18:37:35 -0500 Subject: Temporary diagnostics --- indra/newview/llappearancemgr.cpp | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'indra/newview/llappearancemgr.cpp') diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp index 0cceba6cb0..aad39854e4 100644 --- a/indra/newview/llappearancemgr.cpp +++ b/indra/newview/llappearancemgr.cpp @@ -113,6 +113,8 @@ public: protected: ~LLWearInventoryCategoryCallback() { + llinfos << "BAP done all inventory callbacks" << llendl; + // Is the destructor called by ordinary dereference, or because the app's shutting down? // If the inventory callback manager goes away, we're shutting down, no longer want the callback. if( LLInventoryCallbackManager::is_instantiated() ) @@ -150,12 +152,15 @@ protected: void LLOutfitObserver::done() { + llinfos << "BAP done 2nd stage fetch" << llendl; gInventory.removeObserver(this); doOnIdle(boost::bind(&LLOutfitObserver::doWearCategory,this)); } void LLOutfitObserver::doWearCategory() { + llinfos << "BAP start" << llendl; + // We now have an outfit ready to be copied to agent inventory. Do // it, and wear that outfit normally. if(mCopyItems) @@ -244,6 +249,8 @@ void LLOutfitFetch::done() // What we do here is get the complete information on the items in // the library, and set up an observer that will wait for that to // happen. + llinfos << "BAP done first stage fetch" << llendl; + LLInventoryModel::cat_array_t cat_array; LLInventoryModel::item_array_t item_array; gInventory.collectDescendents(mCompleteFolders.front(), @@ -304,6 +311,8 @@ public: virtual ~LLUpdateAppearanceOnDestroy() { + llinfos << "BAP done update appearance on destroy" << llendl; + if (!LLApp::isExiting()) { LLAppearanceManager::instance().updateAppearanceFromCOF(); @@ -312,6 +321,7 @@ public: /* virtual */ void fire(const LLUUID& inv_item) { + llinfos << "BAP fire" << llendl; mFireCount++; } private: @@ -703,6 +713,8 @@ void LLAppearanceManager::linkAll(const LLUUID& category, void LLAppearanceManager::updateCOF(const LLUUID& category, bool append) { + llinfos << "BAP updating cof" << llendl; + const LLUUID cof = getCOF(); // Deactivate currently active gestures in the COF, if replacing outfit @@ -760,18 +772,26 @@ void LLAppearanceManager::updateCOF(const LLUUID& category, bool append) gInventory.notifyObservers(); // Create links to new COF contents. + llinfos << "BAP creating LLUpdateAppearanceOnDestroy" << llendl; LLPointer link_waiter = new LLUpdateAppearanceOnDestroy; linkAll(cof, body_items, link_waiter); + llinfos << "BAP submitted all body_items link requests" << llendl; linkAll(cof, wear_items, link_waiter); + llinfos << "BAP submitted all wear_items link requests" << llendl; linkAll(cof, obj_items, link_waiter); + llinfos << "BAP submitted all obj link requests" << llendl; linkAll(cof, gest_items, link_waiter); + llinfos << "BAP submitted all gest link requests" << llendl; + // Add link to outfit if category is an outfit. if (!append) { createBaseOutfitLink(category, link_waiter); } + llinfos << "BAP submitted all link requests" << llendl; + llinfos << "BAP waiting for LLUpdateAppearanceOnDestroy" << llendl; } void LLAppearanceManager::updatePanelOutfitName(const std::string& name) @@ -843,6 +863,8 @@ void LLAppearanceManager::updateAppearanceFromCOF() { // update dirty flag to see if the state of the COF matches // the saved outfit stored as a folder link + llinfos << "BAP update appearance starts" << llendl; + updateIsDirty(); dumpCat(getCOF(),"COF, start"); @@ -973,8 +995,11 @@ void LLAppearanceManager::wearInventoryCategory(LLInventoryCategory* category, b { if(!category) return; + llinfos << "BAP wearInventoryCategory" << llendl; + lldebugs << "wearInventoryCategory( " << category->getName() << " )" << llendl; + // What we do here is get the complete information on the items in // the inventory, and set up an observer that will wait for that to // happen. @@ -1003,6 +1028,8 @@ void LLAppearanceManager::wearInventoryCategoryOnAvatar( LLInventoryCategory* ca // this up front to avoid having to deal with the case of multiple // wearables being dirty. if(!category) return; + llinfos << "BAP wearInventoryCategoryOnAvatar( " << category->getName() + << " )" << llendl; lldebugs << "wearInventoryCategoryOnAvatar( " << category->getName() << " )" << llendl; -- cgit v1.2.3 From a3d8338cdcf73b17f6cec4f07916560477d933a6 Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Fri, 12 Feb 2010 13:12:26 -0500 Subject: For EXT-5259: Major regression in load time for new users from 1.23 to 2.0. Moved autopopulate to after avatar appearance resolves --- indra/newview/llappearancemgr.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'indra/newview/llappearancemgr.cpp') diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp index aad39854e4..8a646bd626 100644 --- a/indra/newview/llappearancemgr.cpp +++ b/indra/newview/llappearancemgr.cpp @@ -1307,6 +1307,20 @@ void LLAppearanceManager::updateIsDirty() } } +void LLAppearanceManager::onFirstFullyVisible() +{ + // If this is the very first time the user has logged into viewer2+ (from a legacy viewer, or new account) + // then auto-populate outfits from the library into the My Outfits folder. + static bool check_populate_my_outfits = true; + if (check_populate_my_outfits && + (LLInventoryModel::getIsFirstTimeInViewer2() + || gSavedSettings.getBOOL("MyOutfitsAutofill"))) + { + gAgentWearables.populateMyOutfitsFolder(); + } + check_populate_my_outfits = false; +} + //#define DUMP_CAT_VERBOSE void LLAppearanceManager::dumpCat(const LLUUID& cat_id, const std::string& msg) -- cgit v1.2.3 From 1e76fc2b1f4e735105f2d45d73ea5a92dbad4e05 Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Fri, 12 Feb 2010 13:44:32 -0500 Subject: Log spam cleanup --- indra/newview/llappearancemgr.cpp | 38 ++++++++++++++++---------------------- 1 file changed, 16 insertions(+), 22 deletions(-) (limited to 'indra/newview/llappearancemgr.cpp') diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp index 8a646bd626..062e291161 100644 --- a/indra/newview/llappearancemgr.cpp +++ b/indra/newview/llappearancemgr.cpp @@ -113,7 +113,7 @@ public: protected: ~LLWearInventoryCategoryCallback() { - llinfos << "BAP done all inventory callbacks" << llendl; + llinfos << "done all inventory callbacks" << llendl; // Is the destructor called by ordinary dereference, or because the app's shutting down? // If the inventory callback manager goes away, we're shutting down, no longer want the callback. @@ -152,14 +152,14 @@ protected: void LLOutfitObserver::done() { - llinfos << "BAP done 2nd stage fetch" << llendl; + llinfos << "done 2nd stage fetch" << llendl; gInventory.removeObserver(this); doOnIdle(boost::bind(&LLOutfitObserver::doWearCategory,this)); } void LLOutfitObserver::doWearCategory() { - llinfos << "BAP start" << llendl; + llinfos << "starting" << llendl; // We now have an outfit ready to be copied to agent inventory. Do // it, and wear that outfit normally. @@ -249,7 +249,7 @@ void LLOutfitFetch::done() // What we do here is get the complete information on the items in // the library, and set up an observer that will wait for that to // happen. - llinfos << "BAP done first stage fetch" << llendl; + llinfos << "done first stage fetch" << llendl; LLInventoryModel::cat_array_t cat_array; LLInventoryModel::item_array_t item_array; @@ -311,7 +311,7 @@ public: virtual ~LLUpdateAppearanceOnDestroy() { - llinfos << "BAP done update appearance on destroy" << llendl; + llinfos << "done update appearance on destroy" << llendl; if (!LLApp::isExiting()) { @@ -321,7 +321,7 @@ public: /* virtual */ void fire(const LLUUID& inv_item) { - llinfos << "BAP fire" << llendl; + llinfos << "callback fired" << llendl; mFireCount++; } private: @@ -713,7 +713,7 @@ void LLAppearanceManager::linkAll(const LLUUID& category, void LLAppearanceManager::updateCOF(const LLUUID& category, bool append) { - llinfos << "BAP updating cof" << llendl; + llinfos << "starting" << llendl; const LLUUID cof = getCOF(); @@ -772,26 +772,20 @@ void LLAppearanceManager::updateCOF(const LLUUID& category, bool append) gInventory.notifyObservers(); // Create links to new COF contents. - llinfos << "BAP creating LLUpdateAppearanceOnDestroy" << llendl; + llinfos << "creating LLUpdateAppearanceOnDestroy" << llendl; LLPointer link_waiter = new LLUpdateAppearanceOnDestroy; linkAll(cof, body_items, link_waiter); - llinfos << "BAP submitted all body_items link requests" << llendl; linkAll(cof, wear_items, link_waiter); - llinfos << "BAP submitted all wear_items link requests" << llendl; linkAll(cof, obj_items, link_waiter); - llinfos << "BAP submitted all obj link requests" << llendl; linkAll(cof, gest_items, link_waiter); - llinfos << "BAP submitted all gest link requests" << llendl; - // Add link to outfit if category is an outfit. if (!append) { createBaseOutfitLink(category, link_waiter); } - llinfos << "BAP submitted all link requests" << llendl; - llinfos << "BAP waiting for LLUpdateAppearanceOnDestroy" << llendl; + llinfos << "waiting for LLUpdateAppearanceOnDestroy" << llendl; } void LLAppearanceManager::updatePanelOutfitName(const std::string& name) @@ -863,7 +857,7 @@ void LLAppearanceManager::updateAppearanceFromCOF() { // update dirty flag to see if the state of the COF matches // the saved outfit stored as a folder link - llinfos << "BAP update appearance starts" << llendl; + llinfos << "starting" << llendl; updateIsDirty(); @@ -995,9 +989,7 @@ void LLAppearanceManager::wearInventoryCategory(LLInventoryCategory* category, b { if(!category) return; - llinfos << "BAP wearInventoryCategory" << llendl; - - lldebugs << "wearInventoryCategory( " << category->getName() + llinfos << "wearInventoryCategory( " << category->getName() << " )" << llendl; // What we do here is get the complete information on the items in @@ -1028,9 +1020,8 @@ void LLAppearanceManager::wearInventoryCategoryOnAvatar( LLInventoryCategory* ca // this up front to avoid having to deal with the case of multiple // wearables being dirty. if(!category) return; - llinfos << "BAP wearInventoryCategoryOnAvatar( " << category->getName() - << " )" << llendl; - lldebugs << "wearInventoryCategoryOnAvatar( " << category->getName() + + llinfos << "wearInventoryCategoryOnAvatar( " << category->getName() << " )" << llendl; if( gFloaterCustomize ) @@ -1311,6 +1302,9 @@ void LLAppearanceManager::onFirstFullyVisible() { // If this is the very first time the user has logged into viewer2+ (from a legacy viewer, or new account) // then auto-populate outfits from the library into the My Outfits folder. + + llinfos << "avatar fully visible" << llendl; + static bool check_populate_my_outfits = true; if (check_populate_my_outfits && (LLInventoryModel::getIsFirstTimeInViewer2() -- cgit v1.2.3