i965g: Fix memory leak.
authorVinson Lee <vlee@vmware.com>
Sun, 21 Feb 2010 23:15:52 +0000 (15:15 -0800)
committerVinson Lee <vlee@vmware.com>
Sun, 21 Feb 2010 23:15:52 +0000 (15:15 -0800)
src/gallium/drivers/i965/brw_state_cache.c

index 85c20076fb894b3eaa5983c28f41add469ac2a79..c911f3997d18fc47c688ca2ca33a2e9c93f76bac 100644 (file)
@@ -213,7 +213,7 @@ brw_upload_cache( struct brw_cache *cache,
                  void *aux_return,
                   struct brw_winsys_buffer **bo_out)
 {
-   struct brw_cache_item *item = CALLOC_STRUCT(brw_cache_item);
+   struct brw_cache_item *item;
    GLuint hash = hash_key(key, key_size, relocs, nr_relocs);
    GLuint relocs_size = nr_relocs * sizeof relocs[0];
    GLuint aux_size = cache->aux_size[cache_id];
@@ -233,6 +233,7 @@ brw_upload_cache( struct brw_cache *cache,
    if (ret)
       return ret;
 
+   item = CALLOC_STRUCT(brw_cache_item);
 
    /* Set up the memory containing the key, aux_data, and relocs */
    tmp = MALLOC(key_size + aux_size + relocs_size);