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).
diff --git a/src/core/nginx.c b/src/core/nginx.c
index d02f911..0459776 100644
--- a/src/core/nginx.c
+++ b/src/core/nginx.c
@@ -594,6 +594,10 @@
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));