diff options
author | Remko Tronçon <git@el-tramo.be> | 2011-04-08 21:58:03 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2011-04-18 19:11:40 (GMT) |
commit | 01385d84f07466550fff702079555c65963463a8 (patch) | |
tree | d995334b205737b2402a8f5778642342b9b3ab02 /Swiften/Parser/PayloadParsers/RosterParser.cpp | |
parent | 1a92834490cda1352a46eaef02a4e7ff76ab94e3 (diff) | |
download | swift-contrib-01385d84f07466550fff702079555c65963463a8.zip swift-contrib-01385d84f07466550fff702079555c65963463a8.tar.bz2 |
Added XEP-0237 Roster Versioning support.
Resolves: #803
Release-Notes: Added support for XEP-0237 Roster Versioning
Diffstat (limited to 'Swiften/Parser/PayloadParsers/RosterParser.cpp')
-rw-r--r-- | Swiften/Parser/PayloadParsers/RosterParser.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Swiften/Parser/PayloadParsers/RosterParser.cpp b/Swiften/Parser/PayloadParsers/RosterParser.cpp index ba19fbf..0da9f48 100644 --- a/Swiften/Parser/PayloadParsers/RosterParser.cpp +++ b/Swiften/Parser/PayloadParsers/RosterParser.cpp @@ -13,7 +13,13 @@ RosterParser::RosterParser() : level_(TopLevel), inItem_(false), unknownContentP } void RosterParser::handleStartElement(const std::string& element, const std::string& ns, const AttributeMap& attributes) { - if (level_ == PayloadLevel) { + if (level_ == TopLevel) { + AttributeMap::const_iterator i = attributes.find("ver"); + if (i != attributes.end()) { + getPayloadInternal()->setVersion(i->second); + } + } + else if (level_ == PayloadLevel) { if (element == "item") { inItem_ = true; currentItem_ = RosterItemPayload(); |