summaryrefslogtreecommitdiff
path: root/Zend/zend_alloc.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2017-03-09 20:47:06 +0100
committerNikita Popov <nikita.ppv@gmail.com>2017-03-09 20:47:06 +0100
commit177f87cf052179d22bab008aa13c69d4b0cdc0ef (patch)
tree4782748537252a507856f2eeb4e0cb806a05b2d2 /Zend/zend_alloc.c
parent247ce052cd0fc7d0d8ea1a0e7ea2075e9601766a (diff)
downloadphp-git-177f87cf052179d22bab008aa13c69d4b0cdc0ef.tar.gz
Fixed bug #73370
If len=0 malloc() is allowed to return NULL.
Diffstat (limited to 'Zend/zend_alloc.c')
-rw-r--r--Zend/zend_alloc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_alloc.c b/Zend/zend_alloc.c
index 14cc0d52a0..48def78a41 100644
--- a/Zend/zend_alloc.c
+++ b/Zend/zend_alloc.c
@@ -2862,7 +2862,7 @@ static ZEND_COLD ZEND_NORETURN void zend_out_of_memory(void)
ZEND_API void * __zend_malloc(size_t len)
{
void *tmp = malloc(len);
- if (EXPECTED(tmp)) {
+ if (EXPECTED(tmp || !len)) {
return tmp;
}
zend_out_of_memory();
@@ -2878,7 +2878,7 @@ ZEND_API void * __zend_calloc(size_t nmemb, size_t len)
ZEND_API void * __zend_realloc(void *p, size_t len)
{
p = realloc(p, len);
- if (EXPECTED(p)) {
+ if (EXPECTED(p || !len)) {
return p;
}
zend_out_of_memory();