test finalized image filter context before testing image_filter off

this fixes SIGFPE if image filter errors are passed to named location
This commit is contained in:
Igor Sysoev 2009-05-12 12:05:29 +00:00
parent 40d6ee9ade
commit fd61ab4550

View File

@ -162,6 +162,13 @@ ngx_http_image_header_filter(ngx_http_request_t *r)
return ngx_http_next_header_filter(r);
}
ctx = ngx_http_get_module_ctx(r, ngx_http_image_filter_module);
if (ctx) {
ngx_http_set_ctx(r, NULL, ngx_http_image_filter_module);
return ngx_http_next_header_filter(r);
}
conf = ngx_http_get_module_loc_conf(r, ngx_http_image_filter_module);
if (conf->filter == NGX_HTTP_IMAGE_OFF) {
@ -181,13 +188,6 @@ ngx_http_image_header_filter(ngx_http_request_t *r)
return NGX_ERROR;
}
ctx = ngx_http_get_module_ctx(r, ngx_http_image_filter_module);
if (ctx) {
ngx_http_set_ctx(r, NULL, ngx_http_image_filter_module);
return ngx_http_next_header_filter(r);
}
ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_image_filter_ctx_t));
if (ctx == NULL) {
return NGX_ERROR;