fix a memory leak in key.cpp
- add EC_KEY_free() in CKey::Reset() when pkey != NULL - init pkey with NULL in CKey constructor
This commit is contained in:
parent
d65e959bae
commit
a3d12f445a
1 changed files with 3 additions and 0 deletions
|
@ -129,6 +129,8 @@ void CKey::SetCompressedPubKey()
|
||||||
void CKey::Reset()
|
void CKey::Reset()
|
||||||
{
|
{
|
||||||
fCompressedPubKey = false;
|
fCompressedPubKey = false;
|
||||||
|
if (pkey != NULL)
|
||||||
|
EC_KEY_free(pkey);
|
||||||
pkey = EC_KEY_new_by_curve_name(NID_secp256k1);
|
pkey = EC_KEY_new_by_curve_name(NID_secp256k1);
|
||||||
if (pkey == NULL)
|
if (pkey == NULL)
|
||||||
throw key_error("CKey::CKey() : EC_KEY_new_by_curve_name failed");
|
throw key_error("CKey::CKey() : EC_KEY_new_by_curve_name failed");
|
||||||
|
@ -137,6 +139,7 @@ void CKey::Reset()
|
||||||
|
|
||||||
CKey::CKey()
|
CKey::CKey()
|
||||||
{
|
{
|
||||||
|
pkey = NULL;
|
||||||
Reset();
|
Reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue