Skip to content

Commit

Permalink
daemon: separate close from free.
Browse files Browse the repository at this point in the history
  • Loading branch information
nodech committed Dec 16, 2021
1 parent 5af0156 commit 751bf4c
Showing 1 changed file with 38 additions and 14 deletions.
52 changes: 38 additions & 14 deletions src/daemon.c
Original file line number Diff line number Diff line change
Expand Up @@ -399,6 +399,8 @@ static void
hsk_daemon_after_close(void *data);
static void
hsk_daemon_signal_shutdown(void *data);
static void
hsk_daemon_uninit(hsk_daemon_t *data);

int
hsk_daemon_init(hsk_daemon_t *daemon, uv_loop_t *loop, hsk_options_t *opt) {
Expand Down Expand Up @@ -501,10 +503,36 @@ hsk_daemon_init(hsk_daemon_t *daemon, uv_loop_t *loop, hsk_options_t *opt) {
return HSK_SUCCESS;

fail:
hsk_daemon_after_close((void *)daemon);
hsk_daemon_uninit(daemon);
return rc;
}

void
hsk_daemon_uninit(hsk_daemon_t *daemon) {
if (!daemon)
return;

if (daemon->signals) {
hsk_signals_free(daemon->signals);
daemon->signals = NULL;
}

if (daemon->rs) {
hsk_rs_free(daemon->rs);
daemon->rs = NULL;
}

if (daemon->pool) {
hsk_pool_free(daemon->pool);
daemon->pool = NULL;
}

if (daemon->ns) {
hsk_ns_free(daemon->ns);
daemon->ns = NULL;
}
}

int
hsk_daemon_open(hsk_daemon_t *daemon, hsk_options_t *opt) {
int rc = HSK_SUCCESS;
Expand Down Expand Up @@ -564,25 +592,21 @@ static void
hsk_daemon_after_close(void *data) {
hsk_daemon_t *daemon = (hsk_daemon_t *)data;

if (daemon->rs) {
hsk_rs_free(daemon->rs);
daemon->rs = NULL;
}

if (daemon->ns) {
hsk_ns_destroy(daemon->ns);
daemon->ns = NULL;
int rc = hsk_ns_close(daemon->ns);

if (rc != HSK_SUCCESS)
fprintf(stderr, "failed to close ns: %s\n", hsk_strerror(rc));
}

if (daemon->pool) {
hsk_pool_destroy(daemon->pool);
daemon->pool = NULL;
}
int rc = hsk_pool_close(daemon->pool);

if (daemon->signals) {
hsk_signals_free(daemon->signals);
daemon->signals = NULL;
if (rc != HSK_SUCCESS)
fprintf(stderr, "failed to close pool: %s\n", hsk_strerror(rc));
}

hsk_daemon_uninit(daemon);
}

static void
Expand Down

0 comments on commit 751bf4c

Please sign in to comment.