gallium/vl: do not call transfer_unmap if transfer is NULL

CC: mesa-stable
Acked-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6817>
(cherry picked from commit b121b1b8b8)
This commit is contained in:
Pierre-Eric Pelloux-Prayer 2020-09-22 14:31:32 +02:00 committed by Dylan Baker
parent 28cff4722d
commit e84d418bd1
3 changed files with 7 additions and 4 deletions

View file

@ -733,7 +733,7 @@
"description": "gallium/vl: do not call transfer_unmap if transfer is NULL",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"master_sha": null,
"because_sha": null
},

View file

@ -769,7 +769,8 @@ vl_mpeg12_end_frame(struct pipe_video_codec *decoder,
vl_vb_unmap(&buf->vertex_stream, dec->context);
dec->context->transfer_unmap(dec->context, buf->tex_transfer);
if (buf->tex_transfer)
dec->context->transfer_unmap(dec->context, buf->tex_transfer);
vb[0] = dec->quads;
vb[1] = dec->pos;

View file

@ -352,11 +352,13 @@ vl_vb_unmap(struct vl_vertex_buffer *buffer, struct pipe_context *pipe)
assert(buffer && pipe);
for (i = 0; i < VL_NUM_COMPONENTS; ++i) {
pipe_buffer_unmap(pipe, buffer->ycbcr[i].transfer);
if (buffer->ycbcr[i].transfer)
pipe_buffer_unmap(pipe, buffer->ycbcr[i].transfer);
}
for (i = 0; i < VL_MAX_REF_FRAMES; ++i) {
pipe_buffer_unmap(pipe, buffer->mv[i].transfer);
if (buffer->mv[i].transfer)
pipe_buffer_unmap(pipe, buffer->mv[i].transfer);
}
}