diff options
-rw-r--r-- | source3/locking/brlock.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source3/locking/brlock.c b/source3/locking/brlock.c index 9b8dcfd15e..9b90d87ff0 100644 --- a/source3/locking/brlock.c +++ b/source3/locking/brlock.c @@ -1642,8 +1642,8 @@ static struct byte_range_lock *brl_get_locks_internal(TALLOC_CTX *mem_ctx, talloc_set_destructor(br_lck, byte_range_lock_destructor); br_lck->num_locks = data.dsize / sizeof(struct lock_struct); - if (!(br_lck->lock_data = SMB_MALLOC_ARRAY( - struct lock_struct, br_lck->num_locks))) { + br_lck->lock_data = SMB_MALLOC_ARRAY(struct lock_struct, br_lck->num_locks); + if ((br_lck->num_locks != 0) && (br_lck->lock_data == NULL)) { DEBUG(0, ("malloc failed\n")); TALLOC_FREE(br_lck); return NULL; |