Mercurial > dovecot > core-2.2
changeset 18940:ec912a6039f5
lib-master: If idle-die callback returns FALSE, notify master that we don't want to die.
This avoids the master thinking that we're ignoring its idle-kill signal and
logging an error.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 17 Aug 2015 12:53:52 +0300 |
parents | 10df63e74ed6 |
children | 622ce8582a8e |
files | src/lib-master/master-service.c |
diffstat | 1 files changed, 7 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-master/master-service.c Mon Aug 17 12:51:43 2015 +0300 +++ b/src/lib-master/master-service.c Mon Aug 17 12:53:52 2015 +0300 @@ -45,6 +45,8 @@ static void master_service_io_listeners_close(struct master_service *service); static void master_service_refresh_login_state(struct master_service *service); +static void +master_status_send(struct master_service *service, bool important_update); const char *master_service_getopt_string(void) { @@ -73,8 +75,12 @@ return; if (service->idle_die_callback != NULL && - !service->idle_die_callback()) + !service->idle_die_callback()) { + /* we don't want to die - send a notification to master + so it doesn't think we're ignoring it completely. */ + master_status_send(service, FALSE); return; + } } service->killed = TRUE;