diff options
author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-10-03 17:13:18 -0400 |
---|---|---|
committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-10-03 17:13:18 -0400 |
commit | e29b66ed6ce29528f7b733c51db22a31a05d3a5f (patch) | |
tree | cc4485d5796d303a69b754a6b27c26f66eb768fc /indra/newview | |
parent | 5010cf72d345e60d0a367ea213dafe8727414612 (diff) |
additional fixes for avoiding avatar param manipulation via wearables, setting correct state from avatar appearance
Diffstat (limited to 'indra/newview')
-rwxr-xr-x | indra/newview/llviewerwearable.cpp | 4 | ||||
-rwxr-xr-x | indra/newview/llvoavatarself.cpp | 7 |
2 files changed, 11 insertions, 0 deletions
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(); |