X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=source%2Fdiameter%2Fstack%2FDictionary.cpp;h=68f37c191646267a72bf7c27b876d5e73cd6f408;hb=64d7c531cdf5f4bca4fa2d8c9736de98247dfe13;hp=d5676a8955dcbc0cf93f69d3a2d9a328c047de47;hpb=93366a0bda79e6fd6e7dad6316bfcf8cc82f5731;p=anna.git diff --git a/source/diameter/stack/Dictionary.cpp b/source/diameter/stack/Dictionary.cpp index d5676a8..68f37c1 100644 --- a/source/diameter/stack/Dictionary.cpp +++ b/source/diameter/stack/Dictionary.cpp @@ -41,8 +41,9 @@ LOGNOTICE(\ trace += "\n";\ anna::Logger::notice(trace, ANNA_FILE_LOCATION);\ );\ +std::string name = found->getName();\ pool.erase(pool.find(found->getId()));\ -poolNames.erase(poolNames.find(found->getName())); +poolNames.erase(poolNames.find(name)); //------------------------------------------------------------------------------ @@ -201,7 +202,7 @@ void Dictionary::addAvp(const Avp & avp) throw(anna::RuntimeException) { ITEM_OVERWRITE("avp", avp, a_avps, a_avpNames); } - if(found = getAvp(avp.getName())) { + if((found = getAvp(avp.getName()))) { if(!a_allowUpdates) { std::string s_ex = "Cannot add an avp with an existing name:\n"; s_ex += avp.asString(); @@ -693,7 +694,7 @@ void Dictionary::extractAvps(const anna::xml::Node *rootNode) throw(anna::Runtim throw anna::RuntimeException(s_ex, ANNA_FILE_LOCATION); } - auxAvpRule.setAvpName(id); + auxAvpRule.setAvpId(avp->getId()); auxAvpRule.setPresence(AvpRule::Presence::asEnum(type)); auxAvpRule.setQual(qual ? (qual->getValue()) : ""); gavp->addAvpRule(auxAvpRule); @@ -795,7 +796,7 @@ void Dictionary::extractCommands(const anna::xml::Node *rootNode) throw(anna::Ru throw anna::RuntimeException(s_ex, ANNA_FILE_LOCATION); } - auxAvpRule.setAvpName(id); + auxAvpRule.setAvpId(avp->getId()); auxAvpRule.setPresence(AvpRule::Presence::asEnum(type)); auxAvpRule.setQual(qual ? (qual->getValue()) : ""); auxCommand.addAvpRule(auxAvpRule);