static void ngx_http_perl_cleanup_perl(void *data);
#endif
+static void ngx_http_perl_exit(ngx_cycle_t *cycle);
+
static ngx_command_t ngx_http_perl_commands[] = {
NULL, /* init thread */
NULL, /* exit thread */
NULL, /* exit process */
- NULL, /* exit master */
+ ngx_http_perl_exit, /* exit master */
NGX_MODULE_V1_PADDING
};
#endif
- PERL_SYS_INIT(&ngx_argc, &ngx_argv);
+ if (nginx_stash == NULL) {
+ PERL_SYS_INIT(&ngx_argc, &ngx_argv);
+ }
pmcf->perl = ngx_http_perl_create_interpreter(cf, pmcf);
if (pmcf->perl == NULL) {
- PERL_SYS_TERM();
return NGX_CONF_ERROR;
}
(void) perl_destruct(perl);
perl_free(perl);
-
- PERL_SYS_TERM();
}
#endif
return NGX_CONF_OK;
}
+
+
+static void
+ngx_http_perl_exit(ngx_cycle_t *cycle)
+{
+ PERL_SYS_TERM();
+}