Otherwise we risk causing memory corruption. v2: forgot the mutex_unlock()
Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> --- src/gallium/state_trackers/vdpau/surface.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gallium/state_trackers/vdpau/surface.c b/src/gallium/state_trackers/vdpau/surface.c index 1bebe6c..16ad5c4 100644 --- a/src/gallium/state_trackers/vdpau/surface.c +++ b/src/gallium/state_trackers/vdpau/surface.c @@ -87,6 +87,12 @@ vlVdpVideoSurfaceCreate(VdpDevice device, VdpChromaType chroma_type, PIPE_VIDEO_CAP_PREFERS_INTERLACED ); p_surf->video_buffer = pipe->create_video_buffer(pipe, &p_surf->templat); + if (!p_surf->video_buffer) { + pipe_mutex_unlock(dev->mutex); + ret = VDP_STATUS_RESOURCES; + goto inv_device; + } + vlVdpVideoSurfaceClear(p_surf); pipe_mutex_unlock(dev->mutex); -- 1.8.3.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev