diff options
Diffstat (limited to 'minecproxy/main.c')
-rw-r--r-- | minecproxy/main.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/minecproxy/main.c b/minecproxy/main.c index 48bb1fa..7e17369 100644 --- a/minecproxy/main.c +++ b/minecproxy/main.c @@ -179,9 +179,19 @@ static void cfg_free(struct uring_task *task) debug(DBG_SIG, "called"); systemd_delete(); xfree(cfg->igmp_iface); + cfg->igmp_iface = NULL; xfree(cfg->data_real_path); + cfg->data_real_path = NULL; xfree(cfg->cfg_real_path); - cfg->igmp_iface = NULL; + cfg->cfg_real_path = NULL; + if (cfg->data_dir) { + closedir(cfg->data_dir); + cfg->data_dir = NULL; + } + if (cfg->cfg_dir) { + closedir(cfg->cfg_dir); + cfg->cfg_dir = NULL; + } exiting = true; /* The cfg struct is free:d in main() */ } |