diff --git a/crypto/conf/conf_def.c b/crypto/conf/conf_def.c index 87335a9daa1a34e860f5426184d7d8e709718dfd..6d12b40652955899e954f035d71c5771041d06e6 100644 --- a/crypto/conf/conf_def.c +++ b/crypto/conf/conf_def.c @@ -443,7 +443,11 @@ err: if (line != NULL) *line=eline; sprintf(btmp,"%ld",eline); ERR_add_error_data(2,"line ",btmp); - if ((h != conf->data) && (conf->data != NULL)) CONF_free(conf->data); + if ((h != conf->data) && (conf->data != NULL)) + { + CONF_free(conf->data); + conf->data=NULL; + } if (v != NULL) { if (v->name != NULL) OPENSSL_free(v->name);