diff options
author | Fabio Alessandrelli <fabio.alessandrelli@gmail.com> | 2021-03-12 18:27:58 +0100 |
---|---|---|
committer | Fabio Alessandrelli <fabio.alessandrelli@gmail.com> | 2021-03-12 18:37:34 +0100 |
commit | 18bc1f2a8f4f5ca4ed11eb174e888b1eb9db2bf5 (patch) | |
tree | cd2dfc0a2b3f78993c86ced5b264658af8fe7e32 /thirdparty/mbedtls/library/entropy.c | |
parent | f1e810adcbba6d10ac096bbe1f39650e28330094 (diff) |
Bump mbedtls to version 2.16.10.
Diffstat (limited to 'thirdparty/mbedtls/library/entropy.c')
-rw-r--r-- | thirdparty/mbedtls/library/entropy.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/thirdparty/mbedtls/library/entropy.c b/thirdparty/mbedtls/library/entropy.c index 666c55654c..c5f414a010 100644 --- a/thirdparty/mbedtls/library/entropy.c +++ b/thirdparty/mbedtls/library/entropy.c @@ -146,6 +146,11 @@ void mbedtls_entropy_init( mbedtls_entropy_context *ctx ) void mbedtls_entropy_free( mbedtls_entropy_context *ctx ) { + /* If the context was already free, don't call free() again. + * This is important for mutexes which don't allow double-free. */ + if( ctx->accumulator_started == -1 ) + return; + #if defined(MBEDTLS_HAVEGE_C) mbedtls_havege_free( &ctx->havege_data ); #endif @@ -162,7 +167,7 @@ void mbedtls_entropy_free( mbedtls_entropy_context *ctx ) #endif ctx->source_count = 0; mbedtls_platform_zeroize( ctx->source, sizeof( ctx->source ) ); - ctx->accumulator_started = 0; + ctx->accumulator_started = -1; } int mbedtls_entropy_add_source( mbedtls_entropy_context *ctx, |