summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorandreykproductengine <akleshchev@productengine.com>2014-06-19 21:23:14 +0300
committerandreykproductengine <akleshchev@productengine.com>2014-06-19 21:23:14 +0300
commita7db93cb698d81ea5005ed4be453fbddd65e0cc0 (patch)
treee6e7a74ca009f81d6a220e3f3e01ee2c51622c6d /indra
parentf938c7f7ab914a72a4870b5321644f9d5965fb6c (diff)
MAINT-4182 FIXED The group ban list always appears empty
Diffstat (limited to 'indra')
-rwxr-xr-xindra/newview/llgroupmgr.cpp33
1 files changed, 13 insertions, 20 deletions
diff --git a/indra/newview/llgroupmgr.cpp b/indra/newview/llgroupmgr.cpp
index 61c3bbb13a..50e3ab6dd8 100755
--- a/indra/newview/llgroupmgr.cpp
+++ b/indra/newview/llgroupmgr.cpp
@@ -1868,8 +1868,8 @@ class GroupBanDataResponder : public LLHTTPClient::Responder
public:
GroupBanDataResponder(const LLUUID& gropup_id, BOOL force_refresh=false);
virtual ~GroupBanDataResponder() {}
- virtual void result(const LLSD& pContent);
- virtual void errorWithContent(U32 pStatus, const std::string& pReason, const LLSD& pContent);
+ virtual void httpSuccess();
+ virtual void httpFailure();
private:
LLUUID mGroupID;
BOOL mForceRefresh;
@@ -1880,34 +1880,27 @@ GroupBanDataResponder::GroupBanDataResponder(const LLUUID& gropup_id, BOOL force
mForceRefresh(force_refresh)
{}
-void GroupBanDataResponder::errorWithContent(U32 pStatus, const std::string& pReason, const LLSD& pContent)
+void GroupBanDataResponder::httpFailure()
{
LL_WARNS("GrpMgr") << "Error receiving group member data [status:"
- << pStatus << "]: " << pContent << LL_ENDL;
+ << mStatus << "]: " << mContent << LL_ENDL;
}
-void GroupBanDataResponder::result(const LLSD& content)
+void GroupBanDataResponder::httpSuccess()
{
- if ( content.size())
+ if ( mContent.size())
{
- if (content.has("ban_list"))
+ if (mContent.has("ban_list"))
{
- // group data received
- LLGroupMgr::processGroupBanRequest(content);
- }
- // no group data received, this is either CREATE or DELETE operation
- // complete confirmation. Local data may be obsolete.
- else if (mForceRefresh)
- {
- // providing mGroupId and not extracting it from content since it is not
- // included into CREATE and DELETE responses
- LLGroupMgr::getInstance()->sendGroupBanRequest(LLGroupMgr::REQUEST_GET, mGroupID);
+ // group ban data received
+ LLGroupMgr::processGroupBanRequest(mContent);
+ mForceRefresh = false;
}
}
- else
+ if (mForceRefresh)
{
- LL_WARNS("GrpMgr") << "No group member data received." << LL_ENDL;
- return;
+ // no ban data received, refreshing data after successful operation
+ LLGroupMgr::getInstance()->sendGroupBanRequest(LLGroupMgr::REQUEST_GET, mGroupID);
}
}