summaryrefslogtreecommitdiffstats
path: root/base/crypto/signature_creator_win.cc
diff options
context:
space:
mode:
Diffstat (limited to 'base/crypto/signature_creator_win.cc')
-rw-r--r--base/crypto/signature_creator_win.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/base/crypto/signature_creator_win.cc b/base/crypto/signature_creator_win.cc
index 651ed7a..78e4964 100644
--- a/base/crypto/signature_creator_win.cc
+++ b/base/crypto/signature_creator_win.cc
@@ -48,13 +48,17 @@ bool SignatureCreator::Final(std::vector<uint8>* signature) {
return false;
}
- signature->resize(signature_length);
- if (!CryptSignHash(hash_object_, AT_SIGNATURE, NULL, 0, &signature->front(),
+ std::vector<uint8> temp;
+ temp.resize(signature_length);
+ if (!CryptSignHash(hash_object_, AT_SIGNATURE, NULL, 0, &temp.front(),
&signature_length)) {
return false;
}
- signature->resize(signature_length);
+ temp.resize(signature_length);
+ for (size_t i = temp.size(); i > 0; --i)
+ signature->push_back(temp[i - 1]);
+
hash_object_ = 0;
return true;
}