changeset 5158:f1521859b8c2 stable-1.2

Merge of r5117, r5123: allocation errors handing during upgrade. *) Core: guard against failed allocation during binary upgrade. Patch by Piotr Sikora. *) Core: fixed resource leak if binary upgrade fails due to no memory. Found by Coverity (CID 992320).
author Maxim Dounin <mdounin@mdounin.ru>
date Fri, 29 Mar 2013 17:51:00 +0000
parents d6980725e25c
children 94c349e3589d
files src/core/nginx.c
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/core/nginx.c
+++ b/src/core/nginx.c
@@ -594,6 +594,10 @@ ngx_exec_new_binary(ngx_cycle_t *cycle, 
     var = ngx_alloc(sizeof(NGINX_VAR)
                     + cycle->listening.nelts * (NGX_INT32_LEN + 1) + 2,
                     cycle->log);
+    if (var == NULL) {
+        ngx_free(env);
+        return NGX_INVALID_PID;
+    }
 
     p = ngx_cpymem(var, NGINX_VAR "=", sizeof(NGINX_VAR));