summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rwxr-xr-xindra/newview/llvoavatar.cpp41
-rwxr-xr-xindra/newview/llvoavatar.h2
-rwxr-xr-xindra/newview/llvoavatarself.cpp1
-rwxr-xr-x[-rw-r--r--]indra/newview/llwearable.cpp6
4 files changed, 28 insertions, 22 deletions
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index e03c0c3dad..61816c1771 100755
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -7337,6 +7337,7 @@ bool LLVOAvatar::visualParamWeightsAreDefault()
//-----------------------------------------------------------------------------
void LLVOAvatar::processAvatarAppearance( LLMessageSystem* mesgsys )
{
+ dumpArchetypeXML("process_start");
if (gSavedSettings.getBOOL("BlockAvatarAppearanceMessages"))
{
llwarns << "Blocking AvatarAppearance message" << llendl;
@@ -7773,32 +7774,30 @@ void LLVOAvatar::useBakedTexture( const LLUUID& id )
dirtyMesh();
}
-void LLVOAvatar::dumpArchetypeXML(const std::string& filename )
+void LLVOAvatar::dumpArchetypeXML(const std::string& prefix )
{
- std::string outfilename(filename);
- if (outfilename.empty())
+ std::string outprefix(prefix);
+ if (outprefix.empty())
{
- std::string fullname = getFullname();
- if (!fullname.empty())
- {
- typedef std::map<std::string,S32> file_num_type;
- static file_num_type file_nums;
- file_num_type::iterator it = file_nums.find(fullname);
- S32 num = 0;
- if (it != file_nums.end())
- {
- num = it->second;
- }
- std::ostringstream temp;
- temp << std::setw(4) << std::setfill('0') << num;
- file_nums[fullname] = num+1;
- outfilename = fullname + " " + temp.str() + ".xml";
- }
+ outprefix = getFullname();
+ }
+ if (outprefix.empty())
+ {
+ outprefix = std::string("new_archetype");
}
- if (outfilename.empty())
+ typedef std::map<std::string,S32> file_num_type;
+ static file_num_type file_nums;
+ file_num_type::iterator it = file_nums.find(outprefix);
+ S32 num = 0;
+ if (it != file_nums.end())
{
- outfilename = std::string("new archetype.xml");
+ num = it->second;
}
+ std::ostringstream temp;
+ temp << std::setw(4) << std::setfill('0') << num;
+ file_nums[outprefix] = num+1;
+ std::string outfilename = outprefix + " " + temp.str() + ".xml";
+ std::replace(outfilename.begin(),outfilename.end(),' ','_');
LLAPRFile outfile;
outfile.open(gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS,outfilename), LL_APR_WB );
diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h
index 5ec2009971..62c8e68069 100755
--- a/indra/newview/llvoavatar.h
+++ b/indra/newview/llvoavatar.h
@@ -1016,7 +1016,7 @@ private:
// General
//--------------------------------------------------------------------
public:
- void dumpArchetypeXML(const std::string& filename);
+ void dumpArchetypeXML(const std::string& prefix);
static void dumpBakedStatus();
const std::string getBakedStatusForPrintout() const;
void dumpAvatarTEs(const std::string& context) const;
diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp
index 6c8cbc37f7..8791055695 100755
--- a/indra/newview/llvoavatarself.cpp
+++ b/indra/newview/llvoavatarself.cpp
@@ -2706,6 +2706,7 @@ void LLVOAvatarSelf::onCustomizeStart(bool disable_camera_switch)
gAgentCamera.changeCameraToCustomizeAvatar();
}
+ gAgentAvatarp->clearVisualParamWeights();
gAgentAvatarp->invalidateAll();
gAgentAvatarp->updateMeshTextures();
}
diff --git a/indra/newview/llwearable.cpp b/indra/newview/llwearable.cpp
index 402504933c..3f07d6877c 100644..100755
--- a/indra/newview/llwearable.cpp
+++ b/indra/newview/llwearable.cpp
@@ -619,6 +619,12 @@ void LLWearable::setTexturesToDefaults()
void LLWearable::writeToAvatar()
{
if (!isAgentAvatarValid()) return;
+#if 0
+ if (!gAgentAvatarp->isUsingLocalAppearance())
+ {
+ return;
+ }
+#endif
ESex old_sex = gAgentAvatarp->getSex();