Fix Lobby auto-subscribe.

Don't remove auto-subscribe if we cannot get gxsId detail.
But what happens if the id is removed?
This commit is contained in:
Phenom 2017-08-01 10:15:42 +02:00
parent 7d5f60185b
commit 27bedf8414

View File

@ -577,14 +577,18 @@ void DistributedChatService::handleRecvChatLobbyList(RsChatLobbyListItem *item)
} }
RsIdentityDetails idd ; RsIdentityDetails idd ;
if(IS_PGP_SIGNED_LOBBY(flags) if(!rsIdentity->getIdDetails(gxsId,idd))
&& (!rsIdentity->getIdDetails(gxsId,idd) std::cerr << "(EE) Lobby auto-subscribe: Can't get Id detail for:" << gxsId.toStdString().c_str() << std::endl;
|| !(idd.mFlags & RS_IDENTITY_FLAGS_PGP_LINKED)) ) else
{ {
std::cerr << "(EE) Attempt to auto-subscribe to signed lobby with non signed Id. Remove it." << std::endl; if(IS_PGP_SIGNED_LOBBY(flags)
setLobbyAutoSubscribe(*it, false); && !(idd.mFlags & RS_IDENTITY_FLAGS_PGP_LINKED) )
} else { {
joinVisibleChatLobby(*it,gxsId); std::cerr << "(EE) Attempt to auto-subscribe to signed lobby with non signed Id. Remove it." << std::endl;
setLobbyAutoSubscribe(*it, false);
} else {
joinVisibleChatLobby(*it,gxsId);
}
} }
} }