From 6f2c71fc4f82da090495374fd3386f237192743c Mon Sep 17 00:00:00 2001 From: Elaine Wang Date: Thu, 27 Dec 2012 16:04:02 +0800 Subject: Fix klocwork issues BZ: 77254 Check the return value of calloc. Fix NULL pointer dereference risk. Signed-off-by: Elaine Wang Change-Id: Ie877bf092e366f59ffa05f39f0d51d5c5d0c2199 Reviewed-on: http://android.intel.com:8080/83994 Reviewed-by: Wang, Elaine Reviewed-by: Yuan, Shengquan Reviewed-by: Shi, PingX Tested-by: Shi, PingX Reviewed-by: cactus Tested-by: cactus --- src/wsbm_manager.c | 2 ++ src/wsbm_userpool.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/wsbm_manager.c b/src/wsbm_manager.c index a86b894..e95309d 100644 --- a/src/wsbm_manager.c +++ b/src/wsbm_manager.c @@ -1011,6 +1011,8 @@ wsbmBOCreateList(int target, int hasKernelBuffers) struct _WsbmBufferList *list = calloc(sizeof(*list), 1); int ret; + if (!list) + return NULL; list->hasKernelBuffers = hasKernelBuffers; if (hasKernelBuffers) { ret = validateCreateList(target, &list->kernelBuffers, 0); diff --git a/src/wsbm_userpool.c b/src/wsbm_userpool.c index f7833b7..9c7b79a 100644 --- a/src/wsbm_userpool.c +++ b/src/wsbm_userpool.c @@ -339,7 +339,7 @@ pool_validate(struct _WsbmBufStorage *buf, uint64_t set_flags, vBuf->node = wsbmMMGetBlock(vBuf->node, vBuf->size, vBuf->alignment); - if (!err) { + if (!err && vBuf->node) { vBuf->kBuf.placement = WSBM_PL_FLAG_VRAM; vBuf->kBuf.gpuOffset = p->vramOffset + vBuf->node->start; vBuf->map = (void *)(p->vramMap + vBuf->node->start); -- cgit v1.2.3