summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rwxr-xr-xindra/newview/llappearancemgr.cpp18
-rwxr-xr-xindra/newview/llappearancemgr.h7
-rwxr-xr-xindra/newview/llvoavatar.cpp18
3 files changed, 40 insertions, 3 deletions
diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp
index 2b1e78c899..e7fa56466d 100755
--- a/indra/newview/llappearancemgr.cpp
+++ b/indra/newview/llappearancemgr.cpp
@@ -1184,6 +1184,21 @@ S32 LLAppearanceMgr::getCOFVersion() const
}
}
+S32 LLAppearanceMgr::getLastUpdateRequestCOFVersion() const
+{
+ return mLastUpdateRequestCOFVersion;
+}
+
+S32 LLAppearanceMgr::getLastAppearanceUpdateCOFVersion() const
+{
+ return mLastAppearanceUpdateCOFVersion;
+}
+
+void LLAppearanceMgr::setLastAppearanceUpdateCOFVersion(S32 new_val)
+{
+ mLastAppearanceUpdateCOFVersion = new_val;
+}
+
const LLViewerInventoryItem* LLAppearanceMgr::getBaseOutfitLink()
{
const LLUUID& current_outfit_cat = getCOF();
@@ -3293,7 +3308,8 @@ LLAppearanceMgr::LLAppearanceMgr():
mOutfitIsDirty(false),
mOutfitLocked(false),
mIsInUpdateAppearanceFromCOF(false),
- mLastUpdateRequestCOFVersion(LLViewerInventoryCategory::VERSION_UNKNOWN)
+ mLastUpdateRequestCOFVersion(LLViewerInventoryCategory::VERSION_UNKNOWN),
+ mLastAppearanceUpdateCOFVersion(LLViewerInventoryCategory::VERSION_UNKNOWN)
{
LLOutfitObserver& outfit_observer = LLOutfitObserver::instance();
diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h
index bb4c9ee5a2..1a1ca1ca7d 100755
--- a/indra/newview/llappearancemgr.h
+++ b/indra/newview/llappearancemgr.h
@@ -94,7 +94,14 @@ public:
const LLUUID getCOF() const;
S32 getCOFVersion() const;
+ // COF version of last viewer-initiated appearance update request.
S32 mLastUpdateRequestCOFVersion;
+ S32 getLastUpdateRequestCOFVersion() const;
+
+ // COF version of last appearance message received for self av.
+ S32 mLastAppearanceUpdateCOFVersion;
+ S32 getLastAppearanceUpdateCOFVersion() const;
+ void setLastAppearanceUpdateCOFVersion(S32 new_val);
// Finds the folder link to the currently worn outfit
const LLViewerInventoryItem *getBaseOutfitLink();
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index 54bb755ad5..83667c8c55 100755
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -2890,11 +2890,23 @@ BOOL LLVOAvatar::updateCharacter(LLAgent &agent)
}
bool all_baked_downloaded = allBakedTexturesCompletelyDownloaded();
bool all_local_downloaded = allLocalTexturesCompletelyDownloaded();
- addDebugText(llformat("%s%s - mLocal: %d, mEdit: %d, mUSB: %d, CBV: %d",
+ S32 curr_cof_version = -1;
+ S32 last_request_cof_version = -1;
+ S32 last_received_cof_version = -1;
+ if (isSelf())
+ {
+ curr_cof_version = LLAppearanceMgr::instance().getCOFVersion();
+ last_request_cof_version = LLAppearanceMgr::instance().getLastUpdateRequestCOFVersion();
+ last_received_cof_version = LLAppearanceMgr::instance().getLastAppearanceUpdateCOFVersion();
+ }
+
+ addDebugText(llformat("%s%s - mLocal: %d, mEdit: %d, mUSB: %d, CBV: %d - cof: %d req: %d rcv:%d",
all_local_downloaded ? "L" : "l",
all_baked_downloaded ? "B" : "b",
mUseLocalAppearance, mIsEditingAppearance,
- mUseServerBakes, central_bake_version));
+ mUseServerBakes, central_bake_version,
+ curr_cof_version, last_request_cof_version, last_received_cof_version
+ ));
}
if (gSavedSettings.getBOOL("DebugAvatarCompositeBaked"))
{
@@ -6613,6 +6625,8 @@ void LLVOAvatar::processAvatarAppearance( LLMessageSystem* mesgsys )
<< " last_update_request_cof_version " << last_update_request_cof_version
<< " my_cof_version " << LLAppearanceMgr::instance().getCOFVersion() << llendl;
+ LLAppearanceMgr::instance().setLastAppearanceUpdateCOFVersion(this_update_cof_version);
+
if (getRegion() && (getRegion()->getCentralBakeVersion()==0))
{
llwarns << avString() << "Received AvatarAppearance message for self in non-server-bake region" << llendl;