summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2018-06-24 01:57:03 +0200
committerHaru <haru@dotalux.com>2018-06-24 01:57:03 +0200
commit97243c6c325f980fcc90d7c814207070262efc7e (patch)
treedeaff8038cd17ba2ab73475ec3692710f86f2ba5
parent9b0ab441ebc1a69df627c4b665f02ab28d995020 (diff)
downloadhercules-97243c6c325f980fcc90d7c814207070262efc7e.tar.gz
hercules-97243c6c325f980fcc90d7c814207070262efc7e.tar.bz2
hercules-97243c6c325f980fcc90d7c814207070262efc7e.tar.xz
hercules-97243c6c325f980fcc90d7c814207070262efc7e.zip
Use the correct shutdown callback when the server receives a termination signal
This fixes a regression introduced in 22bd368e5d4d8d61a7189d03f52c3afd90c0729e Signed-off-by: Haru <haru@dotalux.com>
-rw-r--r--src/common/core.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/common/core.c b/src/common/core.c
index 1bd332eec..406bb7629 100644
--- a/src/common/core.c
+++ b/src/common/core.c
@@ -80,9 +80,6 @@
// And don't complain to us if the XYZ plugin you installed wiped your hard disk, or worse.
// Note: This feature is deprecated, and should not be used.
-/// Called when a terminate signal is received.
-void (*shutdown_callback)(void) = NULL;
-
struct core_interface core_s;
struct core_interface *core = &core_s;
@@ -128,8 +125,8 @@ static BOOL WINAPI console_handler(DWORD c_event)
case CTRL_CLOSE_EVENT:
case CTRL_LOGOFF_EVENT:
case CTRL_SHUTDOWN_EVENT:
- if( shutdown_callback != NULL )
- shutdown_callback();
+ if (core->shutdown_callback != NULL)
+ core->shutdown_callback();
else
core->runflag = CORE_ST_STOP;// auto-shutdown
break;
@@ -158,8 +155,8 @@ static void sig_proc(int sn)
case SIGTERM:
if (++is_called > 3)
exit(EXIT_SUCCESS);
- if( shutdown_callback != NULL )
- shutdown_callback();
+ if (core->shutdown_callback != NULL)
+ core->shutdown_callback();
else
core->runflag = CORE_ST_STOP;// auto-shutdown
break;