diff options
-rw-r--r-- | src/crypto/oaes_lib.c | 3 | ||||
-rw-r--r-- | src/mnemonics/language_base.h | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/crypto/oaes_lib.c b/src/crypto/oaes_lib.c index 4c1446898..2cf598e05 100644 --- a/src/crypto/oaes_lib.c +++ b/src/crypto/oaes_lib.c @@ -639,7 +639,10 @@ static OAES_RET oaes_key_gen( OAES_CTX * ctx, size_t key_size ) _key->data = (uint8_t *) calloc( key_size, sizeof( uint8_t )); if( NULL == _key->data ) + { + free( _key ); return OAES_RET_MEM; + } for( _i = 0; _i < key_size; _i++ ) #ifdef OAES_HAVE_ISAAC diff --git a/src/mnemonics/language_base.h b/src/mnemonics/language_base.h index 9a60f8a53..e0297c847 100644 --- a/src/mnemonics/language_base.h +++ b/src/mnemonics/language_base.h @@ -106,6 +106,12 @@ namespace Language trimmed_word_map = new std::unordered_map<std::string, uint32_t>;
unique_prefix_length = 4;
}
+ virtual ~Base()
+ {
+ delete word_list;
+ delete word_map;
+ delete trimmed_word_map;
+ }
/*!
* \brief Returns a pointer to the word list.
* \return A pointer to the word list.
|