ralloc: don't write to memory in case of alloc fail.
authorDave Airlie <airlied@redhat.com>
Wed, 17 Apr 2013 01:07:49 +0000 (11:07 +1000)
committerDave Airlie <airlied@redhat.com>
Wed, 17 Apr 2013 23:50:42 +0000 (09:50 +1000)
For some reason I made this happen under indirect rendering,
I think we might have a leak, valgrind gave out, so I said I'd
fix the basic problem.

NOTE: This is a candidate for stable branches.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
src/glsl/ralloc.c

index 59e71c48b00e627342ec8491bd6ab926b87e6679..02816425221f9adc3105d73c07726a7bfac74a17 100644 (file)
@@ -108,6 +108,8 @@ ralloc_size(const void *ctx, size_t size)
 {
    void *block = calloc(1, size + sizeof(ralloc_header));
 
+   if (unlikely(block == NULL))
+      return NULL;
    ralloc_header *info = (ralloc_header *) block;
    ralloc_header *parent = ctx != NULL ? get_header(ctx) : NULL;