summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorMaximB ProductEngine <mberezhnoy@productengine.com>2013-12-12 07:24:13 +0200
committerMaximB ProductEngine <mberezhnoy@productengine.com>2013-12-12 07:24:13 +0200
commit2a1098552e071c625a8c1614a331e9557212d380 (patch)
tree1283cd746e6a1b0d0ffc214e8cc6863f1202c226 /indra
parent06d66598459d0b362bdba663af09af0a893c2abe (diff)
MAINT-3541 (crash in std::vector >::reserve)
Diffstat (limited to 'indra')
-rwxr-xr-xindra/llmessage/lltemplatemessagereader.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/indra/llmessage/lltemplatemessagereader.cpp b/indra/llmessage/lltemplatemessagereader.cpp
index ab91f74abe..94bc7cb045 100755
--- a/indra/llmessage/lltemplatemessagereader.cpp
+++ b/indra/llmessage/lltemplatemessagereader.cpp
@@ -91,15 +91,17 @@ void LLTemplateMessageReader::getData(const char *blockname, const char *varname
}
LLMsgBlkData *msg_block_data = iter->second;
- LLMsgVarData& vardata = msg_block_data->mMemberVarData[vnamep];
+ LLMsgBlkData::msg_var_data_map_t &var_data_map = msg_block_data->mMemberVarData;
- if (!vardata.getName())
+ if (var_data_map.find(vnamep) == var_data_map.end())
{
llerrs << "Variable "<< vnamep << " not in message "
<< mCurrentRMessageData->mName<< " block " << bnamep << llendl;
return;
}
+ LLMsgVarData& vardata = msg_block_data->mMemberVarData[vnamep];
+
if (size && size != vardata.getSize())
{
llerrs << "Msg " << mCurrentRMessageData->mName