Skip to content

Commit c5c3fd7

Browse files
committed
main: call unloadlibs from main
Signed-off-by: He Xian <[email protected]>
1 parent 23e7640 commit c5c3fd7

File tree

3 files changed

+5
-18
lines changed

3 files changed

+5
-18
lines changed

src/main.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,7 @@ int main(int argc, char **argv)
225225
LOGN_F("%s shutdown gracefully", conf_modestr(conf));
226226
ev_loop_destroy(loop);
227227
conf_free(conf);
228+
unloadlibs();
228229

229230
LOGD("program terminated normally");
230231
return EXIT_SUCCESS;

src/util.c

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -128,30 +128,15 @@ void init(int argc, char **argv)
128128
if (sigaction(SIGPIPE, &ignore, NULL) != 0) {
129129
FAILMSGF("sigaction: %s", strerror(errno));
130130
}
131+
#if WITH_CRASH_HANDLER
132+
set_crash_handler();
133+
#endif
131134
}
132135

133136
struct mcache *msgpool;
134137

135-
static void unloadlibs(void);
136-
137138
void loadlibs(void)
138139
{
139-
{
140-
static bool loaded = false;
141-
if (loaded) {
142-
return;
143-
}
144-
loaded = true;
145-
146-
const int ret = atexit(unloadlibs);
147-
if (ret != 0) {
148-
FAILMSGF("atexit: %d", ret);
149-
}
150-
}
151-
#if WITH_CRASH_HANDLER
152-
set_crash_handler();
153-
#endif
154-
155140
LOGD_F("%s: %s", PROJECT_NAME, PROJECT_VER);
156141
LOGD_F("libev: %d.%d", ev_version_major(), ev_version_minor());
157142

src/util.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ bool check_rate_limit(ev_tstamp *last, ev_tstamp now, double interval);
7878

7979
void init(int argc, char **argv);
8080
void loadlibs(void);
81+
void unloadlibs(void);
8182

8283
#if WITH_CRYPTO
8384
void genpsk(const char *method);

0 commit comments

Comments
 (0)