diff options
-rw-r--r-- | src/server/shared/Cryptography/BigNumber.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/server/shared/Cryptography/BigNumber.cpp b/src/server/shared/Cryptography/BigNumber.cpp index bec43ac59a4..938e9104851 100644 --- a/src/server/shared/Cryptography/BigNumber.cpp +++ b/src/server/shared/Cryptography/BigNumber.cpp @@ -57,9 +57,14 @@ void BigNumber::SetQword(uint64 val) void BigNumber::SetBinary(uint8 const* bytes, int32 len) { - uint8 t[1000]; - for (int i = 0; i < len; i++) t[i] = bytes[len - 1 - i]; - BN_bin2bn(t, len, _bn); + uint8* array = new uint8[len]; + + for (int i = 0; i < len; i++) + array[i] = bytes[len - 1 - i]; + + BN_bin2bn(array, len, _bn); + + delete[] array; } void BigNumber::SetHexStr(char const* str) |