diff options
| -rwxr-xr-x | indra/newview/llappearancemgr.cpp | 9 | ||||
| -rwxr-xr-x | indra/newview/llvoavatar.cpp | 52 | ||||
| -rwxr-xr-x | indra/newview/llvoavatar.h | 3 | 
3 files changed, 41 insertions, 23 deletions
| diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp index bd4e8ddf72..8d41edf6af 100755 --- a/indra/newview/llappearancemgr.cpp +++ b/indra/newview/llappearancemgr.cpp @@ -3063,6 +3063,13 @@ public:  		ofs << LLSDOStreamer<LLSDXMLFormatter>(content, LLSDFormatter::OPTIONS_PRETTY);  		LL_DEBUGS("Avatar") << "results saved to: " << fullpath << LL_ENDL;  	} + +	void debugCOF(const LLSD& content) +	{ +		//S32 cof_version = content["cof_version"]; +		//S32 cof_expected = content["expected"]; +		//S32 cof_observed = content["observed"]; +	}  	// Error  	/*virtual*/ void errorWithContent(U32 status, const std::string& reason, const LLSD& content) @@ -3071,6 +3078,8 @@ public:  		if (gSavedSettings.getBOOL("DebugAvatarAppearanceMessage"))  		{  			dumpContents("appearance_request_error", content); +			debugCOF(content); +		  		}  		onFailure(status);  	}	 diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 04458da529..afe8a037b7 100755 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -210,6 +210,24 @@ struct LLTextureMaskData   **   **/ +struct LLAppearanceMessageContents +{ +	LLAppearanceMessageContents(): +		mAppearanceVersion(-1), +		mParamAppearanceVersion(-1), +		mCOFVersion(LLViewerInventoryCategory::VERSION_UNKNOWN) +	{ +	} +	LLTEContents mTEContents; +	S32 mAppearanceVersion; +	S32 mParamAppearanceVersion; +	S32 mCOFVersion; +	// For future use: +	//U32 appearance_flags = 0; +	std::vector<F32> mParamWeights; +	std::vector<LLVisualParam*> mParams; +}; +  //-----------------------------------------------------------------------------  // class LLBodyNoiseMotion  //----------------------------------------------------------------------------- @@ -6725,10 +6743,11 @@ void dump_visual_param(apr_file_t* file, LLVisualParam* viewer_param, F32 value)  void LLVOAvatar::dumpAppearanceMsgParams( const std::string& dump_prefix, -										  const std::vector<F32>& params_for_dump, -										  const LLTEContents& tec) +										  const LLAppearanceMessageContents& contents)  {  	std::string outfilename = get_sequential_numbered_file_name(dump_prefix,".xml"); +	const std::vector<F32>& params_for_dump = contents.mParamWeights; +	const LLTEContents& tec = contents.mTEContents;  	LLAPRFile outfile;  	std::string fullpath = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,outfilename); @@ -6743,7 +6762,12 @@ void LLVOAvatar::dumpAppearanceMsgParams( const std::string& dump_prefix,  		LL_DEBUGS("Avatar") << "dumping appearance message to " << fullpath << llendl;  	} +	apr_file_printf(file, "<header>\n"); +	apr_file_printf(file, "\t\t<cof_version %i />\n", contents.mCOFVersion); +	apr_file_printf(file, "\t\t<appearance_version %i />\n", contents.mAppearanceVersion); +	apr_file_printf(file, "</header>\n"); +	apr_file_printf(file, "\n<params>\n");  	LLVisualParam* param = getFirstVisualParam();  	for (S32 i = 0; i < params_for_dump.size(); i++)  	{ @@ -6756,32 +6780,18 @@ void LLVOAvatar::dumpAppearanceMsgParams( const std::string& dump_prefix,  		dump_visual_param(file, viewer_param, value);  		param = getNextVisualParam();  	} +	apr_file_printf(file, "</params>\n"); + +	apr_file_printf(file, "\n<textures>\n");  	for (U32 i = 0; i < tec.face_count; i++)  	{  		std::string uuid_str;  		((LLUUID*)tec.image_data)[i].toString(uuid_str);  		apr_file_printf( file, "\t\t<texture te=\"%i\" uuid=\"%s\"/>\n", i, uuid_str.c_str());  	} +	apr_file_printf(file, "</textures>\n");  } -struct LLAppearanceMessageContents -{ -	LLAppearanceMessageContents(): -		mAppearanceVersion(-1), -		mParamAppearanceVersion(-1), -		mCOFVersion(LLViewerInventoryCategory::VERSION_UNKNOWN) -	{ -	} -	LLTEContents mTEContents; -	S32 mAppearanceVersion; -	S32 mParamAppearanceVersion; -	S32 mCOFVersion; -	// For future use: -	//U32 appearance_flags = 0; -	std::vector<F32> mParamWeights; -	std::vector<LLVisualParam*> mParams; -}; -  void LLVOAvatar::parseAppearanceMessage(LLMessageSystem* mesgsys, LLAppearanceMessageContents& contents)  {  	parseTEMessage(mesgsys, _PREHASH_ObjectData, -1, contents.mTEContents); @@ -6920,7 +6930,7 @@ void LLVOAvatar::processAvatarAppearance( LLMessageSystem* mesgsys )  	parseAppearanceMessage(mesgsys, contents);  	if (enable_verbose_dumps)  	{ -		dumpAppearanceMsgParams(dump_prefix + "appearance_msg", contents.mParamWeights, contents.mTEContents); +		dumpAppearanceMsgParams(dump_prefix + "appearance_msg", contents);  	}  	S32 appearance_version; diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index 3382a1ef17..5ebd8d0399 100755 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -928,8 +928,7 @@ private:  public:  	void				dumpArchetypeXML(const std::string& prefix, bool group_by_wearables = false);  	void 				dumpAppearanceMsgParams( const std::string& dump_prefix, -												 const std::vector<F32>& paramsForDump, -												 const LLTEContents& tec); +												 const LLAppearanceMessageContents& contents);  	static void			dumpBakedStatus();  	const std::string 	getBakedStatusForPrintout() const;  	void				dumpAvatarTEs(const std::string& context) const; | 
