Fix for channel bug: used service id twice

Fix for posted lock-up/rsgenexchange bug: did not release after try lock
Removed erroneous use of subscribe_admin to mean subscribed (subscribe_subscribe) in gxsnet

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6245 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
chrisparker126 2013-03-19 20:13:13 +00:00
parent ef240cc6f0
commit 83e41eb04c
3 changed files with 6 additions and 5 deletions

View File

@ -880,6 +880,7 @@ void RsGenExchange::msgsChanged(std::map<RsGxsGroupId,
mMsgChange.pop_back(); mMsgChange.pop_back();
delete mc; delete mc;
} }
mGenMtx.unlock();
} }
} }
@ -899,6 +900,7 @@ void RsGenExchange::groupsChanged(std::list<RsGxsGroupId>& grpIds)
mGroupChange.pop_back(); mGroupChange.pop_back();
delete gc; delete gc;
} }
mGenMtx.unlock();
} }
} }

View File

@ -104,8 +104,7 @@ void RsGxsNetService::syncWithPeers()
{ {
RsGxsGrpMetaData* meta = mit->second; RsGxsGrpMetaData* meta = mit->second;
if(meta->mSubscribeFlags & (GXS_SERV::GROUP_SUBSCRIBE_SUBSCRIBED | if(meta->mSubscribeFlags & GXS_SERV::GROUP_SUBSCRIBE_SUBSCRIBED )
GXS_SERV::GROUP_SUBSCRIBE_ADMIN) )
grpIds.push_back(mit->first); grpIds.push_back(mit->first);
delete meta; delete meta;
@ -1412,8 +1411,8 @@ void RsGxsNetService::handleRecvSyncGroup(RsNxsSyncGrp* item)
{ {
RsGxsGrpMetaData* grpMeta = mit->second; RsGxsGrpMetaData* grpMeta = mit->second;
if(grpMeta->mSubscribeFlags & (GXS_SERV::GROUP_SUBSCRIBE_SUBSCRIBED | if(grpMeta->mSubscribeFlags &
GXS_SERV::GROUP_SUBSCRIBE_ADMIN) ) GXS_SERV::GROUP_SUBSCRIBE_SUBSCRIBED)
{ {
RsNxsSyncGrpItem* gItem = new RsNxsSyncGrpItem* gItem = new
RsNxsSyncGrpItem(mServType); RsNxsSyncGrpItem(mServType);

View File

@ -138,7 +138,7 @@ const uint16_t RS_SERVICE_GXSV1_TYPE_WIRE = 0xf304;
const uint16_t RS_SERVICE_GXSV1_TYPE_FORUMS = 0xf305; const uint16_t RS_SERVICE_GXSV1_TYPE_FORUMS = 0xf305;
const uint16_t RS_SERVICE_GXSV1_TYPE_POSTED = 0xf306; const uint16_t RS_SERVICE_GXSV1_TYPE_POSTED = 0xf306;
const uint16_t RS_SERVICE_GXSV1_TYPE_CHANNELS = 0xf307; const uint16_t RS_SERVICE_GXSV1_TYPE_CHANNELS = 0xf307;
const uint16_t RS_SERVICE_GXSV1_TYPE_GXSCIRCLE = 0xf307; const uint16_t RS_SERVICE_GXSV1_TYPE_GXSCIRCLE = 0xf308;
const uint16_t RS_SERVICE_GXSV2_TYPE_GXSID = 0xf311; const uint16_t RS_SERVICE_GXSV2_TYPE_GXSID = 0xf311;
const uint16_t RS_SERVICE_GXSV2_TYPE_GXSCIRCLE = 0xf312; const uint16_t RS_SERVICE_GXSV2_TYPE_GXSCIRCLE = 0xf312;