diff options
author | Dave Airlie <[email protected]> | 2015-10-31 16:07:52 +1000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2015-10-31 16:16:44 +1000 |
commit | 8d731ebd33211d8b9c108fa60bfc854b2a8464c5 (patch) | |
tree | 2e5b1dcb069266294413475423fe7d8c3661fb75 /src/gallium/drivers/virgl/virgl_context.c | |
parent | 7153b12651f4d6e3b160a8d577a084a32be08c40 (diff) |
virgl: free sampler view on failure path
Reported by Coverity.
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/virgl/virgl_context.c')
-rw-r--r-- | src/gallium/drivers/virgl/virgl_context.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/drivers/virgl/virgl_context.c b/src/gallium/drivers/virgl/virgl_context.c index cae6352c0fe..e4f02ba1096 100644 --- a/src/gallium/drivers/virgl/virgl_context.c +++ b/src/gallium/drivers/virgl/virgl_context.c @@ -665,13 +665,17 @@ static struct pipe_sampler_view *virgl_create_sampler_view(struct pipe_context * const struct pipe_sampler_view *state) { struct virgl_context *vctx = virgl_context(ctx); - struct virgl_sampler_view *grview = CALLOC_STRUCT(virgl_sampler_view); + struct virgl_sampler_view *grview; uint32_t handle; struct virgl_resource *res; if (state == NULL) return NULL; + grview = CALLOC_STRUCT(virgl_sampler_view); + if (!grview) + return NULL; + res = virgl_resource(texture); handle = virgl_object_assign_handle(); virgl_encode_sampler_view(vctx, handle, res, state); |