summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_texture.c
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2010-06-09 20:16:00 +0200
committerMarek Olšák <maraeo@gmail.com>2010-06-09 20:17:27 +0200
commit950be3fa3c22d67f3b80e7ed5d274d957f0bff93 (patch)
tree8796c9dc9245eee1a65a972cb2201531ede49c91 /src/gallium/drivers/r300/r300_texture.c
parentda4185ca77395b9dddc362891d8f7bbc2fa924cd (diff)
r300g: return NULL texture early if buffer_create fails
Diffstat (limited to 'src/gallium/drivers/r300/r300_texture.c')
-rw-r--r--src/gallium/drivers/r300/r300_texture.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c
index 5a013e2a25..c95a3f79af 100644
--- a/src/gallium/drivers/r300/r300_texture.c
+++ b/src/gallium/drivers/r300/r300_texture.c
@@ -979,16 +979,16 @@ struct pipe_resource* r300_texture_create(struct pipe_screen* screen,
tex->buffer = rws->buffer_create(rws, 2048, base->bind, tex->domain,
tex->size);
+ if (!tex->buffer) {
+ FREE(tex);
+ return NULL;
+ }
+
rws->buffer_set_tiling(rws, tex->buffer,
tex->pitch[0] * util_format_get_blocksize(tex->b.b.format),
tex->microtile,
tex->macrotile);
- if (!tex->buffer) {
- FREE(tex);
- return NULL;
- }
-
return (struct pipe_resource*)tex;
}