summaryrefslogtreecommitdiff
path: root/TSRM/TSRM.c
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2015-03-09 19:34:09 +0100
committerAnatol Belski <ab@php.net>2015-03-10 09:10:23 +0100
commitfca341699ed851ac40d49a03fcf5d460c6d3c5ed (patch)
treebed56e1aa85dad75b1901e6e9225c27a180d17bc /TSRM/TSRM.c
parenta30d328671a93aa7411af2e46176b1bbfd315a93 (diff)
downloadphp-git-fca341699ed851ac40d49a03fcf5d460c6d3c5ed.tar.gz
don't pass zero to malloc()
Diffstat (limited to 'TSRM/TSRM.c')
-rw-r--r--TSRM/TSRM.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/TSRM/TSRM.c b/TSRM/TSRM.c
index c3f05a5842..386b682ea7 100644
--- a/TSRM/TSRM.c
+++ b/TSRM/TSRM.c
@@ -277,7 +277,10 @@ static void allocate_new_resource(tsrm_tls_entry **thread_resources_ptr, THREAD_
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Creating data structures for thread %x", thread_id));
(*thread_resources_ptr) = (tsrm_tls_entry *) malloc(sizeof(tsrm_tls_entry));
- (*thread_resources_ptr)->storage = (void **) malloc(sizeof(void *)*id_count);
+ (*thread_resources_ptr)->storage = NULL;
+ if (id_count > 0) {
+ (*thread_resources_ptr)->storage = (void **) malloc(sizeof(void *)*id_count);
+ }
(*thread_resources_ptr)->count = id_count;
(*thread_resources_ptr)->thread_id = thread_id;
(*thread_resources_ptr)->next = NULL;