]> git.kaiwu.me - nginx.git/commitdiff
Fixed segfault with filter_finalize introduced in r4621 (1.3.0).
authorMaxim Dounin <mdounin@mdounin.ru>
Thu, 17 May 2012 17:41:40 +0000 (17:41 +0000)
committerMaxim Dounin <mdounin@mdounin.ru>
Thu, 17 May 2012 17:41:40 +0000 (17:41 +0000)
Example configuration to reproduce:

    location /image/ {
        error_page 415 = /zero;
        image_filter crop 100 100;
        proxy_pass http://127.0.0.1:8080;
        proxy_store on;
    }

    location /zero {
        return 204;
    }

The problem appeared if upstream returned (big enough) non-image file,
causing 415 to be generated by image filter.

src/http/ngx_http_request.c

index fa58dd99b70ba6d73248069cb35936c898ce7aab..06f89d648ef191df1dab3f490d693db51e5f0ea7 100644 (file)
@@ -1933,8 +1933,6 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc)
 
     if (rc == NGX_OK && r->filter_finalize) {
         c->error = 1;
-        ngx_http_finalize_connection(r);
-        return;
     }
 
     if (rc == NGX_DECLINED) {