summaryrefslogtreecommitdiffhomepage
path: root/src/http/modules/perl/ngx_http_perl_module.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2009-09-08 11:33:32 +0000
committerIgor Sysoev <igor@sysoev.ru>2009-09-08 11:33:32 +0000
commit4d4b2a1b40e1f0b5f669f05cfa22beaeb4f4c2f9 (patch)
tree920e7873a7bfeed5e903464ab238d2713bbff13e /src/http/modules/perl/ngx_http_perl_module.c
parent9963b19f69d69204ad1c3578d1276601b4433422 (diff)
downloadnginx-4d4b2a1b40e1f0b5f669f05cfa22beaeb4f4c2f9.tar.gz
nginx-4d4b2a1b40e1f0b5f669f05cfa22beaeb4f4c2f9.tar.bz2
fix request counter handling in perl module for $r->internal_redirect()
and $r->has_request_body(), the bug was introduced in r3050
Diffstat (limited to '')
-rw-r--r--src/http/modules/perl/ngx_http_perl_module.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/http/modules/perl/ngx_http_perl_module.c b/src/http/modules/perl/ngx_http_perl_module.c
index 34ecc9a33..634801ece 100644
--- a/src/http/modules/perl/ngx_http_perl_module.c
+++ b/src/http/modules/perl/ngx_http_perl_module.c
@@ -238,6 +238,7 @@ ngx_http_perl_handle_request(ngx_http_request_t *r)
"perl handler done: %i", rc);
if (rc == NGX_DONE) {
+ ngx_http_finalize_request(r, rc);
return;
}
@@ -257,11 +258,13 @@ ngx_http_perl_handle_request(ngx_http_request_t *r)
ctx->redirect_uri.len = 0;
if (ctx->done || ctx->next) {
+ ngx_http_finalize_request(r, NGX_DONE);
return;
}
if (uri.len) {
ngx_http_internal_redirect(r, &uri, &args);
+ ngx_http_finalize_request(r, NGX_DONE);
return;
}