Mercurial > dovecot > core-2.2
changeset 22945:6d6ae8f334f3
lib: Call module's preinit function, when loading
author | Sergey Kitov <sergey.kitov@open-xchange.com> |
---|---|
date | Wed, 18 Apr 2018 13:30:50 +0300 |
parents | 666f2182826f |
children | 12c7ddbeae92 |
files | src/lib/module-dir.c |
diffstat | 1 files changed, 6 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib/module-dir.c Fri Mar 09 15:17:29 2018 +0200 +++ b/src/lib/module-dir.c Wed Apr 18 13:30:50 2018 +0300 @@ -187,6 +187,7 @@ void *handle; struct module *module; const char *const *module_version; + void (*preinit)(void); *module_r = NULL; *error_r = NULL; @@ -243,6 +244,11 @@ module->deinit = (void (*)(void)) get_symbol(module, t_strconcat(name, "_deinit", NULL), !set->require_init_funcs); + preinit = (void (*)(void)) + get_symbol(module, t_strconcat(name, "_preinit", NULL), + TRUE); + if (preinit != NULL) + preinit(); if ((module->init == NULL || module->deinit == NULL) && set->require_init_funcs) {