mirror of
https://github.com/nginx/nginx.git
synced 2025-07-23 05:41:07 +08:00
Merge of r4947: xslt: prevented infinite loop.
If XSLT transformation failed and error 500 was handled in the same location, an infinite loop occured that exhausted the stack.
This commit is contained in:
parent
deee4cafa0
commit
374b73c43c
@ -307,7 +307,7 @@ ngx_http_xslt_send(ngx_http_request_t *r, ngx_http_xslt_filter_ctx_t *ctx,
|
|||||||
ctx->done = 1;
|
ctx->done = 1;
|
||||||
|
|
||||||
if (b == NULL) {
|
if (b == NULL) {
|
||||||
return ngx_http_filter_finalize_request(r, NULL,
|
return ngx_http_filter_finalize_request(r, &ngx_http_xslt_filter_module,
|
||||||
NGX_HTTP_INTERNAL_SERVER_ERROR);
|
NGX_HTTP_INTERNAL_SERVER_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -315,7 +315,7 @@ ngx_http_xslt_send(ngx_http_request_t *r, ngx_http_xslt_filter_ctx_t *ctx,
|
|||||||
|
|
||||||
if (cln == NULL) {
|
if (cln == NULL) {
|
||||||
ngx_free(b->pos);
|
ngx_free(b->pos);
|
||||||
return ngx_http_filter_finalize_request(r, NULL,
|
return ngx_http_filter_finalize_request(r, &ngx_http_xslt_filter_module,
|
||||||
NGX_HTTP_INTERNAL_SERVER_ERROR);
|
NGX_HTTP_INTERNAL_SERVER_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user