Re: Модуль на C++ - возможно?
Sergey S.
neavirc at gmail.com
Fri Mar 7 18:55:48 MSK 2008
Здравствуйте.
Еще одна засада возникла =) В модуле используется map<string, string> для
хранения конфигурации, и средствами nginx'а под нее память выделяется как-то
неправильно. При обращении к контейнеру в обработчике для директив nginx
падает в сегфолт.
Поэтому память приходится выделять так:
static void* ngx_http_test_create_loc_conf(ngx_conf_t *cf)
{
ngx_http_test_loc_conf_t *conf = new ngx_http_test_loc_conf_t; // где
ngx_http_test_loc_conf_t == map<string, string>
return conf;
}
Вопрос: как ее правильно освобождать? Сейчас память освобождается в коллбеке
(но есть подозрения, что могут быть последствия):
void ngx_http_test_exit_process(ngx_cycle_t* cycle)
{
delete g_conf;
}
где g_conf - глобальный указатель на map<string,string>.
С уважением,
Сергей Самохин.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20080307/4fda1fca/attachment.html>
More information about the nginx-ru
mailing list