dovecot-2.0: master: Fixed crash on config reload.

dovecot at dovecot.org dovecot at dovecot.org
Thu May 27 23:15:53 EEST 2010


details:   http://hg.dovecot.org/dovecot-2.0/rev/9bb17fe5465f
changeset: 11403:9bb17fe5465f
user:      Timo Sirainen <tss at iki.fi>
date:      Thu May 27 21:15:50 2010 +0100
description:
master: Fixed crash on config reload.

diffstat:

 src/master/service-monitor.c |  6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diffs (22 lines):

diff -r 6ac0459a6f0e -r 9bb17fe5465f src/master/service-monitor.c
--- a/src/master/service-monitor.c	Thu May 27 21:10:07 2010 +0100
+++ b/src/master/service-monitor.c	Thu May 27 21:15:50 2010 +0100
@@ -427,6 +427,11 @@
 		}
 		if (service->type == SERVICE_TYPE_ANVIL)
 			service_anvil_process_destroyed(process);
+
+		/* if we're reloading, we may get here with a service list
+		   that's going to be destroyed after this process is
+		   destroyed. keep the list referenced until we're done. */
+		service_list_ref(service->list);
 		service_process_destroy(process);
 
 		if (throttle)
@@ -437,5 +442,6 @@
 			if (service->to_throttle == NULL)
 				service_monitor_listen_start(service);
 		}
+		service_list_unref(service->list);
 	}
 }


More information about the dovecot-cvs mailing list