From 99d9e8cd67bb68ffb7d73c6f7acae159e527eedf Mon Sep 17 00:00:00 2001 From: "roberto@precise64" Date: Fri, 11 May 2012 21:15:58 +0200 Subject: [PATCH] applied atexit patch from 1.2.2 --- master_utils.c | 3 +++ uwsgi.c | 2 +- uwsgi.h | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/master_utils.c b/master_utils.c index c2d9d77a..499de2c6 100644 --- a/master_utils.c +++ b/master_utils.c @@ -238,6 +238,9 @@ void uwsgi_reload(char **argv) { waitpid(WAIT_ANY, &waitpid_status, WNOHANG); } + // call atexit user exec + uwsgi_exec_atexit(); + if (uwsgi.exit_on_reload) { uwsgi_log("uWSGI: GAME OVER (insert coin)\n"); exit(0); diff --git a/uwsgi.c b/uwsgi.c index d3706655..77c01895 100644 --- a/uwsgi.c +++ b/uwsgi.c @@ -963,7 +963,7 @@ struct uwsgi_plugin unconfigured_plugin = { .after_request = unconfigured_after_hook, }; -static void uwsgi_exec_atexit(void) { +void uwsgi_exec_atexit(void) { if (getpid() == masterpid) { // now run exit scripts needed by the user struct uwsgi_string_list *usl = uwsgi.exec_as_user_atexit; diff --git a/uwsgi.h b/uwsgi.h index 402c2200..0832bacd 100644 --- a/uwsgi.h +++ b/uwsgi.h @@ -2834,6 +2834,7 @@ uint64_t uwsgi_micros(void); int uwsgi_is_file(char *); void uwsgi_receive_signal(int, char *, int); +void uwsgi_exec_atexit(void); #ifdef UWSGI_AS_SHARED_LIBRARY int uwsgi_init(int, char **, char **);