diff options
author | Kevin Smith <git@kismith.co.uk> | 2015-03-11 14:54:53 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2016-03-17 14:05:16 (GMT) |
commit | 6159c580884583bad0e17d4e96ea9ffc7e0be29a (patch) | |
tree | 5dc0ee6cb91c30fc17002a196b154dbb7e12466e /Swiften/JID/JID.cpp | |
parent | 603c639030c3d0582dcd499fa3ee95f2a26885d2 (diff) | |
download | swift-6159c580884583bad0e17d4e96ea9ffc7e0be29a.zip swift-6159c580884583bad0e17d4e96ea9ffc7e0be29a.tar.bz2 |
Don't allow JIDs with explicitly empty resources
A JID may have no resource, but may not have an empty resource. Mark such
JIDs as invalid.
Test-Information:
Added a unit test for the failure case (and made it pass). Other unit tests still pass
Change-Id: I4fb300f716e635a3f8f02843891f25218da77130
Diffstat (limited to 'Swiften/JID/JID.cpp')
-rw-r--r-- | Swiften/JID/JID.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Swiften/JID/JID.cpp b/Swiften/JID/JID.cpp index a0f18d5..37fb755 100644 --- a/Swiften/JID/JID.cpp +++ b/Swiften/JID/JID.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010-2013 Isode Limited. + * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -146,6 +146,9 @@ JID::JID(const std::string& node, const std::string& domain) : valid_(true), has } JID::JID(const std::string& node, const std::string& domain, const std::string& resource) : valid_(true), hasResource_(true) { + if (resource.empty()) { + valid_ = false; + } nameprepAndSetComponents(node, domain, resource); } |