r600g/compute: Adding checks for NULL after CALLOC
authorBruno Jiménez <brunojimen@gmail.com>
Mon, 19 May 2014 16:14:52 +0000 (18:14 +0200)
committerTom Stellard <thomas.stellard@amd.com>
Tue, 10 Jun 2014 19:29:57 +0000 (15:29 -0400)
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
src/gallium/drivers/r600/compute_memory_pool.c

index ccbb21197e2903c24f092b992e198038b4c2362f..7143545ad6d017b33476467ce1a397c868deee10 100644 (file)
@@ -49,6 +49,8 @@ struct compute_memory_pool* compute_memory_pool_new(
 {
        struct compute_memory_pool* pool = (struct compute_memory_pool*)
                                CALLOC(sizeof(struct compute_memory_pool), 1);
+       if (pool == NULL)
+               return NULL;
 
        COMPUTE_DBG(rscreen, "* compute_memory_pool_new()\n");
 
@@ -64,6 +66,9 @@ static void compute_memory_pool_init(struct compute_memory_pool * pool,
                initial_size_in_dw);
 
        pool->shadow = (uint32_t*)CALLOC(initial_size_in_dw, 4);
+       if (pool->shadow == NULL)
+               return;
+
        pool->next_id = 1;
        pool->size_in_dw = initial_size_in_dw;
        pool->bo = (struct r600_resource*)r600_compute_buffer_alloc_vram(pool->screen,
@@ -400,6 +405,9 @@ struct compute_memory_item* compute_memory_alloc(
 
        new_item = (struct compute_memory_item *)
                                CALLOC(sizeof(struct compute_memory_item), 1);
+       if (new_item == NULL)
+               return NULL;
+
        new_item->size_in_dw = size_in_dw;
        new_item->start_in_dw = -1; /* mark pending */
        new_item->id = pool->next_id++;