Fixed reading memory after it was deleted. The error was the reason for the ghost feed items.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7849 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
thunder2 2015-01-15 21:49:33 +00:00
parent 8006484242
commit 2b0bdc73bb

View File

@ -2892,7 +2892,6 @@ void RsGenExchange::removeDeleteExistingMessages( RsGeneralDataService::MsgStore
else // remove message from list
{
// msg exist in retrieved index
delete cit2->first;
RsGxsMessageId::std_vector& notifyIds = msgIdsNotify[cit2->second->mGroupId];
RsGxsMessageId::std_vector::iterator it2 = std::find(notifyIds.begin(),
notifyIds.end(), cit2->second->mMsgId);
@ -2901,6 +2900,9 @@ void RsGenExchange::removeDeleteExistingMessages( RsGeneralDataService::MsgStore
#ifdef GEN_EXCH_DEBUG
std::cerr << " discarding " << cit2->second->mMsgId << std::endl;
#endif
delete cit2->first;
// cit2->second will be deleted too in the destructor of cit2->first (RsNxsMsg)
}
}