changeset 8039:e64a1f32065b

Headers filter: improved memory allocation error handling.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 30 May 2022 21:25:57 +0300
parents 711737177b77
children e0cfab501dd1
files src/http/modules/ngx_http_headers_filter_module.c
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/http/modules/ngx_http_headers_filter_module.c
+++ b/src/http/modules/ngx_http_headers_filter_module.c
@@ -377,6 +377,7 @@ ngx_http_set_expires(ngx_http_request_t 
 
         cc = ngx_list_push(&r->headers_out.headers);
         if (cc == NULL) {
+            e->hash = 0;
             return NGX_ERROR;
         }
 
@@ -410,6 +411,8 @@ ngx_http_set_expires(ngx_http_request_t 
 
     e->value.data = ngx_pnalloc(r->pool, len);
     if (e->value.data == NULL) {
+        e->hash = 0;
+        cc->hash = 0;
         return NGX_ERROR;
     }
 
@@ -447,6 +450,7 @@ ngx_http_set_expires(ngx_http_request_t 
     cc->value.data = ngx_pnalloc(r->pool,
                                  sizeof("max-age=") + NGX_TIME_T_LEN + 1);
     if (cc->value.data == NULL) {
+        cc->hash = 0;
         return NGX_ERROR;
     }