summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2009-06-20 14:36:56 (GMT)
committerRemko Tronçon <git@el-tramo.be>2009-06-20 14:38:59 (GMT)
commitbb0dc4a60625c94fac1fb8dada797243b2b83c9e (patch)
tree7232d58bd81a8969fa0074f6ba992b3f2d451985 /Swiften/StringCodecs/SHA1.cpp
parent6eb30e0e1f0a8e7ee936f3c006c7f710785653df (diff)
downloadswift-bb0dc4a60625c94fac1fb8dada797243b2b83c9e.zip
swift-bb0dc4a60625c94fac1fb8dada797243b2b83c9e.tar.bz2
Fixed a bug where SHA1 would alter the input.
Diffstat (limited to 'Swiften/StringCodecs/SHA1.cpp')
-rw-r--r--Swiften/StringCodecs/SHA1.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/Swiften/StringCodecs/SHA1.cpp b/Swiften/StringCodecs/SHA1.cpp
index 18fde71..e59836c 100644
--- a/Swiften/StringCodecs/SHA1.cpp
+++ b/Swiften/StringCodecs/SHA1.cpp
@@ -188,11 +188,12 @@ boost::uint8_t finalcount[8];
namespace Swift {
ByteArray SHA1::getBinaryHash(const ByteArray& input) {
+ ByteArray inputCopy(input);
ByteArray digest;
digest.resize(20);
SHA1_CTX context;
SHA1Init(&context);
- SHA1Update(&context, (boost::uint8_t*) input.getData(), input.getSize());
+ SHA1Update(&context, (boost::uint8_t*) inputCopy.getData(), inputCopy.getSize());
SHA1Final((boost::uint8_t*) digest.getData(), &context);
return digest;
}