From dd2589494f7142aeda2f282a5b6bf1e9a2dd2110 Mon Sep 17 00:00:00 2001 From: Ben Laurie Date: Fri, 18 Jan 2002 12:19:24 +0000 Subject: [PATCH] Other errors are possible. --- crypto/conf/conf_mod.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/crypto/conf/conf_mod.c b/crypto/conf/conf_mod.c index 27c11c1a76..f1950ea16d 100644 --- a/crypto/conf/conf_mod.c +++ b/crypto/conf/conf_mod.c @@ -348,13 +348,20 @@ static int module_init(CONF_MODULE *pmod, char *name, char *value, CONF *cnf) } if (initialized_modules == NULL) + { initialized_modules = sk_CONF_IMODULE_new_null(); - - if (!initialized_modules) - goto err; + if (!initialized_modules) + { + CONFerr(CONF_F_MODULE_INIT, ERR_R_MALLOC_FAILURE); + goto err; + } + } if (!sk_CONF_IMODULE_push(initialized_modules, imod)) + { + CONFerr(CONF_F_MODULE_INIT, ERR_R_MALLOC_FAILURE); goto err; + } pmod->links++; @@ -362,8 +369,6 @@ static int module_init(CONF_MODULE *pmod, char *name, char *value, CONF *cnf) err: - CONFerr(CONF_F_MODULE_INIT, ERR_R_MALLOC_FAILURE); - /* We've started the module so we'd better finish it */ if (pmod->finish && init_called) pmod->finish(imod); -- 2.25.1