diff options
| author | Remko Tronçon <git@el-tramo.be> | 2011-07-12 18:47:03 (GMT) | 
|---|---|---|
| committer | Remko Tronçon <git@el-tramo.be> | 2011-07-12 18:47:03 (GMT) | 
| commit | 63b311c1bb60469eb5e2ccd2107739e11b189a15 (patch) | |
| tree | 870057043f88e91b71b961a821a4dace859fc839 /Swiften/IDN/StringPrep.cpp | |
| parent | c6819a5fd632d03cfe72a58922054765c7383aa6 (diff) | |
| parent | 08536b4ed31c30a25a343c3c2619676e67a0c692 (diff) | |
| download | swift-63b311c1bb60469eb5e2ccd2107739e11b189a15.zip swift-63b311c1bb60469eb5e2ccd2107739e11b189a15.tar.bz2  | |
Merge branch 'swift-1.x'
* swift-1.x:
  Fixed bug with illegal resource in JID resulting in empty resource.
  Updated the german translation
Conflicts:
	Swiften/IDN/StringPrep.cpp
	Swiften/SASL/SCRAMSHA1ClientAuthenticator.cpp
Diffstat (limited to 'Swiften/IDN/StringPrep.cpp')
| -rw-r--r-- | Swiften/IDN/StringPrep.cpp | 12 | 
1 files changed, 10 insertions, 2 deletions
diff --git a/Swiften/IDN/StringPrep.cpp b/Swiften/IDN/StringPrep.cpp index 140e130..db09523 100644 --- a/Swiften/IDN/StringPrep.cpp +++ b/Swiften/IDN/StringPrep.cpp @@ -43,11 +43,19 @@ using namespace Swift;  namespace Swift {  std::string StringPrep::getPrepared(const std::string& s, Profile profile) { -	return std::string(vecptr(getStringPrepared< std::string, std::vector<char> >(s, profile))); +	std::vector<char> preparedData = getStringPrepared< std::string, std::vector<char> >(s, profile); +	if (preparedData.empty()) { +		throw std::exception(); +	} +	return std::string(vecptr(preparedData));  }  SafeByteArray StringPrep::getPrepared(const SafeByteArray& s, Profile profile) { -	return createSafeByteArray(reinterpret_cast<const char*>(vecptr(getStringPrepared<SafeByteArray, std::vector<char, SafeAllocator<char> > >(s, profile)))); +	std::vector<char, SafeAllocator<char> > preparedData = getStringPrepared<SafeByteArray, std::vector<char, SafeAllocator<char> > >(s, profile); +	if (preparedData.empty()) { +		throw std::exception(); +	} +	return createSafeByteArray(reinterpret_cast<const char*>(vecptr(preparedData)));  }  }  | 
 Swift