diff options
| author | Don Kjer <don@lindenlab.com> | 2012-10-04 03:13:14 +0000 | 
|---|---|---|
| committer | Don Kjer <don@lindenlab.com> | 2012-10-04 03:13:14 +0000 | 
| commit | 6d613b61d76c1909021983901920b6b1dc2c80f4 (patch) | |
| tree | ade650a2b4b5aa37a549fc90c106f128f7095cc6 /indra | |
| parent | c9ab9590aa1d44ea139b16e7ffcb1461d928bdd5 (diff) | |
| parent | 13d6a9920d06bd718b632c0980f8340909b8187c (diff) | |
Automated merge
Diffstat (limited to 'indra')
| -rwxr-xr-x[-rw-r--r--] | indra/llappearance/llwearabledata.cpp | 5 | ||||
| -rw-r--r-- | indra/llcharacter/llvisualparam.cpp | 1 | ||||
| -rwxr-xr-x | indra/newview/llviewerwearable.cpp | 4 | ||||
| -rwxr-xr-x | indra/newview/llvoavatarself.cpp | 7 | 
4 files changed, 17 insertions, 0 deletions
| diff --git a/indra/llappearance/llwearabledata.cpp b/indra/llappearance/llwearabledata.cpp index d70bbf286a..401b1dc192 100644..100755 --- a/indra/llappearance/llwearabledata.cpp +++ b/indra/llappearance/llwearabledata.cpp @@ -119,6 +119,11 @@ U32 LLWearableData::pushWearable(const LLWearableType::EType type,  void LLWearableData::wearableUpdated(LLWearable *wearable, BOOL removed)  {  	wearable->setUpdated(); +	// FIXME DRANO avoid updating params via wearables when rendering server-baked appearance. +	if (mAvatarAppearance->isUsingServerBakes() && !mAvatarAppearance->isUsingLocalAppearance()) +	{ +		return; +	}  	if (!removed)  	{  		pullCrossWearableValues(wearable->getType()); diff --git a/indra/llcharacter/llvisualparam.cpp b/indra/llcharacter/llvisualparam.cpp index 809b312abe..255f61b1b3 100644 --- a/indra/llcharacter/llvisualparam.cpp +++ b/indra/llcharacter/llvisualparam.cpp @@ -250,6 +250,7 @@ void LLVisualParam::setAnimationTarget(F32 target_value, BOOL upload_bake)  	if (mIsDummy)  	{  		setWeight(target_value, upload_bake); +		mTargetWeight = mCurWeight;  		return;  	} diff --git a/indra/newview/llviewerwearable.cpp b/indra/newview/llviewerwearable.cpp index f3d9b2c678..1200f65b6e 100755 --- a/indra/newview/llviewerwearable.cpp +++ b/indra/newview/llviewerwearable.cpp @@ -476,6 +476,10 @@ void LLViewerWearable::setItemID(const LLUUID& item_id)  void LLViewerWearable::revertValues()  { +	if (isAgentAvatarValid() && gAgentAvatarp->isUsingServerBakes() && !gAgentAvatarp->isUsingLocalAppearance()) +	{ +		return; +	}  	LLWearable::revertValues(); diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp index 7ca40a8752..a29ef2f3ad 100755 --- a/indra/newview/llvoavatarself.cpp +++ b/indra/newview/llvoavatarself.cpp @@ -668,6 +668,13 @@ BOOL LLVOAvatarSelf::setParamWeight(const LLViewerVisualParam *param, F32 weight  		return FALSE;  	} +	// FIXME DRANO - kludgy way to avoid overwriting avatar state from wearables. +	if (isUsingServerBakes() && !isUsingLocalAppearance()) +	{ +		return FALSE; +	} + +  	if (param->getCrossWearable())  	{  		LLWearableType::EType type = (LLWearableType::EType)param->getWearableType(); | 
