mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-01-26 23:36:59 -05:00
added missing checks for deserialisation success.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6190 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
c2150768db
commit
0f78719d7f
@ -881,13 +881,22 @@ bool RsGenExchange::getGroupData(const uint32_t &token, std::vector<RsGxsGrpItem
|
|||||||
RsTlvBinaryData& data = (*lit)->grp;
|
RsTlvBinaryData& data = (*lit)->grp;
|
||||||
RsItem* item = mSerialiser->deserialise(data.bin_data, &data.bin_len);
|
RsItem* item = mSerialiser->deserialise(data.bin_data, &data.bin_len);
|
||||||
|
|
||||||
if(item != NULL)
|
if(item)
|
||||||
{
|
{
|
||||||
RsGxsGrpItem* gItem = dynamic_cast<RsGxsGrpItem*>(item);
|
RsGxsGrpItem* gItem = dynamic_cast<RsGxsGrpItem*>(item);
|
||||||
|
if (gItem)
|
||||||
|
{
|
||||||
gItem->meta = *((*lit)->metaData);
|
gItem->meta = *((*lit)->metaData);
|
||||||
grpItem.push_back(gItem);
|
grpItem.push_back(gItem);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
std::cerr << "RsGenExchange::getGroupData() deserialisation/dynamic_cast ERROR";
|
||||||
|
std::cerr << std::endl;
|
||||||
|
delete item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
std::cerr << "RsGenExchange::getGroupData() ERROR deserialising item";
|
std::cerr << "RsGenExchange::getGroupData() ERROR deserialising item";
|
||||||
std::cerr << std::endl;
|
std::cerr << std::endl;
|
||||||
@ -922,9 +931,26 @@ bool RsGenExchange::getMsgData(const uint32_t &token,
|
|||||||
|
|
||||||
RsItem* item = mSerialiser->deserialise(msg->msg.bin_data,
|
RsItem* item = mSerialiser->deserialise(msg->msg.bin_data,
|
||||||
&msg->msg.bin_len);
|
&msg->msg.bin_len);
|
||||||
|
if (item)
|
||||||
|
{
|
||||||
RsGxsMsgItem* mItem = dynamic_cast<RsGxsMsgItem*>(item);
|
RsGxsMsgItem* mItem = dynamic_cast<RsGxsMsgItem*>(item);
|
||||||
|
if (mItem)
|
||||||
|
{
|
||||||
mItem->meta = *((*vit)->metaData); // get meta info from nxs msg
|
mItem->meta = *((*vit)->metaData); // get meta info from nxs msg
|
||||||
gxsMsgItems.push_back(mItem);
|
gxsMsgItems.push_back(mItem);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::cerr << "RsGenExchange::getMsgData() deserialisation/dynamic_cast ERROR";
|
||||||
|
std::cerr << std::endl;
|
||||||
|
delete item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::cerr << "RsGenExchange::getMsgData() deserialisation ERROR";
|
||||||
|
std::cerr << std::endl;
|
||||||
|
}
|
||||||
delete msg;
|
delete msg;
|
||||||
}
|
}
|
||||||
msgItems[grpId] = gxsMsgItems;
|
msgItems[grpId] = gxsMsgItems;
|
||||||
@ -956,13 +982,27 @@ bool RsGenExchange::getMsgRelatedData(const uint32_t &token, GxsMsgRelatedDataMa
|
|||||||
|
|
||||||
RsItem* item = mSerialiser->deserialise(msg->msg.bin_data,
|
RsItem* item = mSerialiser->deserialise(msg->msg.bin_data,
|
||||||
&msg->msg.bin_len);
|
&msg->msg.bin_len);
|
||||||
|
if (item)
|
||||||
|
{
|
||||||
RsGxsMsgItem* mItem = dynamic_cast<RsGxsMsgItem*>(item);
|
RsGxsMsgItem* mItem = dynamic_cast<RsGxsMsgItem*>(item);
|
||||||
|
|
||||||
if(mItem != NULL)
|
if (mItem)
|
||||||
{
|
{
|
||||||
mItem->meta = *((*vit)->metaData); // get meta info from nxs msg
|
mItem->meta = *((*vit)->metaData); // get meta info from nxs msg
|
||||||
gxsMsgItems.push_back(mItem);
|
gxsMsgItems.push_back(mItem);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::cerr << "RsGenExchange::getMsgRelatedData() deserialisation/dynamic_cast ERROR";
|
||||||
|
std::cerr << std::endl;
|
||||||
|
delete item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::cerr << "RsGenExchange::getMsgRelatedData() deserialisation ERROR";
|
||||||
|
std::cerr << std::endl;
|
||||||
|
}
|
||||||
delete msg;
|
delete msg;
|
||||||
}
|
}
|
||||||
msgItems[msgId] = gxsMsgItems;
|
msgItems[msgId] = gxsMsgItems;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user