Mesa (master): util: check for null vertex buffer object in blit code
Brian Paul
brianp at kemper.freedesktop.org
Fri Nov 11 14:11:52 UTC 2011
Module: Mesa
Branch: master
Commit: 7288bfb2a480a06605e671485ea9887f502e5e1a
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7288bfb2a480a06605e671485ea9887f502e5e1a
Author: Brian Paul <brianp at vmware.com>
Date: Thu Nov 10 09:51:11 2011 -0700
util: check for null vertex buffer object in blit code
Don't crash if we fail to allocate a vertex buffer.
---
src/gallium/auxiliary/util/u_blit.c | 16 ++++++++++------
1 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/src/gallium/auxiliary/util/u_blit.c b/src/gallium/auxiliary/util/u_blit.c
index 6a4324b..3a0d7d4 100644
--- a/src/gallium/auxiliary/util/u_blit.c
+++ b/src/gallium/auxiliary/util/u_blit.c
@@ -286,8 +286,10 @@ setup_vertex_data_tex(struct blit_state *ctx,
offset = get_next_slot( ctx );
- pipe_buffer_write_nooverlap(ctx->pipe, ctx->vbuf,
- offset, sizeof(ctx->vertices), ctx->vertices);
+ if (ctx->vbuf) {
+ pipe_buffer_write_nooverlap(ctx->pipe, ctx->vbuf,
+ offset, sizeof(ctx->vertices), ctx->vertices);
+ }
return offset;
}
@@ -599,10 +601,12 @@ util_blit_pixels_writemask(struct blit_state *ctx,
s1, t1,
z);
- util_draw_vertex_buffer(ctx->pipe, ctx->cso, ctx->vbuf, offset,
- PIPE_PRIM_TRIANGLE_FAN,
- 4, /* verts */
- 2); /* attribs/vert */
+ if (ctx->vbuf) {
+ util_draw_vertex_buffer(ctx->pipe, ctx->cso, ctx->vbuf, offset,
+ PIPE_PRIM_TRIANGLE_FAN,
+ 4, /* verts */
+ 2); /* attribs/vert */
+ }
/* restore state we changed */
cso_restore_blend(ctx->cso);
More information about the mesa-commit
mailing list