From: Timo Sirainen Date: Wed, 7 Jun 2017 21:33:32 +0000 (+0300) Subject: lib-master: master_service_import_environment() - use a data stack frame X-Git-Tag: 2.3.0.rc1~1456 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c6dfc77cb24ba1bb72437896080d3177b653e2af;p=thirdparty%2Fdovecot%2Fcore.git lib-master: master_service_import_environment() - use a data stack frame This way the caller doesn't have to do it. --- diff --git a/src/lib-master/master-service.c b/src/lib-master/master-service.c index ff63d5309e..ccea531576 100644 --- a/src/lib-master/master-service.c +++ b/src/lib-master/master-service.c @@ -566,7 +566,7 @@ void master_service_init_finish(struct master_service *service) } } -void master_service_import_environment(const char *import_environment) +static void master_service_import_environment_real(const char *import_environment) { const char *const *envs, *key, *value; ARRAY_TYPE(const_string) keys; @@ -597,6 +597,13 @@ void master_service_import_environment(const char *import_environment) env_put(t_strconcat(DOVECOT_PRESERVE_ENVS_ENV"=", value, NULL)); } +void master_service_import_environment(const char *import_environment) +{ + T_BEGIN { + master_service_import_environment_real(import_environment); + } T_END; +} + void master_service_env_clean(void) { const char *value = getenv(DOVECOT_PRESERVE_ENVS_ENV); diff --git a/src/master/main.c b/src/master/main.c index c7c974e16c..493ddd796a 100644 --- a/src/master/main.c +++ b/src/master/main.c @@ -819,11 +819,9 @@ int main(int argc, char *argv[]) master_settings_do_fixes(set); fatal_log_check(set); - T_BEGIN { - const struct master_service_settings *service_set = - master_service_settings_get(master_service); - master_service_import_environment(service_set->import_environment); - } T_END; + const struct master_service_settings *service_set = + master_service_settings_get(master_service); + master_service_import_environment(service_set->import_environment); master_service_env_clean(); /* create service structures from settings. if there are any errors in