summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2013-02-27 17:58:43 -0500
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2013-02-27 17:58:43 -0500
commit2b6d7e50053a7efd2a20032c801d4b7db3b49dc1 (patch)
tree87bb73f73a97f88066c4631d0fb2be6208ae332b
parent41d3b428e1cfbaf8e21a335e1a9ee9a12ad46c33 (diff)
SH-3860 WIP - fixes for initial COF loading and config
-rwxr-xr-xindra/newview/llappearancemgr.cpp2
-rwxr-xr-xindra/newview/llinventorymodel.cpp4
-rwxr-xr-xindra/newview/llstartup.cpp9
3 files changed, 12 insertions, 3 deletions
diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp
index adfdb7d93d..0177f6d83c 100755
--- a/indra/newview/llappearancemgr.cpp
+++ b/indra/newview/llappearancemgr.cpp
@@ -1819,7 +1819,7 @@ void LLAppearanceMgr::updateCOF(const LLUUID& category, bool append)
// Add link to outfit if category is an outfit.
if (!append)
{
- createBaseOutfitLink(category, NULL);
+ createBaseOutfitLink(category, link_waiter);
}
// Remove current COF contents. Have to do this after creating
diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp
index 171a2cd043..f0bfc68866 100755
--- a/indra/newview/llinventorymodel.cpp
+++ b/indra/newview/llinventorymodel.cpp
@@ -1922,9 +1922,9 @@ bool LLInventoryModel::loadSkeleton(
for(cat_set_t::iterator it = temp_cats.begin(); it != temp_cats.end(); ++it)
{
LLViewerInventoryCategory *llvic = (*it);
-#if 1
+#if 0
llvic->setVersion(NO_VERSION);
-#else
+#else // SH-3860 WIP
if (llvic->getPreferredType()==LLFolderType::FT_CURRENT_OUTFIT && llvic->getVersion()==1)
{
llinfos << "preserving empty COF for first-time login" << llendl;
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index 9d0df5e83e..717f578ddb 100755
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -2572,12 +2572,21 @@ void LLStartUp::loadInitialOutfit( const std::string& outfit_folder_name,
}
else
{
+ // FIXME SH-3860 - this creates a race condition, where COF
+ // changes (base outfit link added) after appearance update
+ // request has been submitted.
sWearablesLoadedCon = gAgentWearables.addLoadedCallback(LLStartUp::saveInitialOutfit);
bool do_copy = true;
bool do_append = false;
LLViewerInventoryCategory *cat = gInventory.getCategory(cat_id);
+#if 0 // SH-3860 WIP
+ // Need to fetch cof contents before we can wear.
+ callAfterCategoryFetch(LLAppearanceMgr::instance().getCOF(),
+ boost::bind(&LLAppearanceMgr::wearInventoryCategory, LLAppearanceMgr::getInstance(), cat, do_copy, do_append));
+#else
LLAppearanceMgr::instance().wearInventoryCategory(cat, do_copy, do_append);
+#endif
lldebugs << "initial outfit category id: " << cat_id << llendl;
}