diff options
Diffstat (limited to 'proxy/src/gp_config.c')
-rw-r--r-- | proxy/src/gp_config.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/proxy/src/gp_config.c b/proxy/src/gp_config.c index 1b676d3..5051a91 100644 --- a/proxy/src/gp_config.c +++ b/proxy/src/gp_config.c @@ -33,12 +33,14 @@ static void free_str_array(const char ***a, int *count) { - const char **array = *a; + const char **array; int i; if (!a) { return; } + array = *a; + if (count) { for (i = 0; i < *count; i++) { safefree(array[i]); @@ -282,13 +284,13 @@ static int gp_init_ini_context(const char *config_file, } ret = gp_config_init(config_file, ctx); + if (ret) { - return ret; + free(ctx); + } else { + *ctxp = ctx; } - - *ctxp = ctx; - - return 0; + return ret; } int load_config(struct gp_config *cfg) |