vl: Silence a warning at -Og
authorAdam Jackson <ajax@redhat.com>
Tue, 26 Jan 2021 19:17:52 +0000 (14:17 -0500)
committerMarge Bot <eric+marge@anholt.net>
Thu, 18 Feb 2021 20:59:43 +0000 (20:59 +0000)
   ../src/gallium/auxiliary/vl/vl_winsys_dri.c: In function ‘vl_dri2_screen_texture_from_drawable’:
   ../src/gallium/auxiliary/vl/vl_winsys_dri.c:239:34: warning: ‘back_left’ may be used uninitialized in this function [-Wmaybe-uninitialized]
     239 |    dri2_handle.stride = back_left->pitch;

The server would be broken if it failed to inform us of the back left
buffer, but let's leave nothing to chance.

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8724>

src/gallium/auxiliary/vl/vl_winsys_dri.c

index 1f160ec..091395d 100644 (file)
@@ -186,7 +186,7 @@ vl_dri2_screen_texture_from_drawable(struct vl_screen *vscreen, void *drawable)
    struct pipe_resource templ, *tex;
 
    xcb_dri2_get_buffers_reply_t *reply;
-   xcb_dri2_dri2_buffer_t *buffers, *back_left;
+   xcb_dri2_dri2_buffer_t *buffers, *back_left = NULL;
 
    unsigned depth = ((xcb_screen_t *)(vscreen->xcb_screen))->root_depth;
    unsigned i;
@@ -217,7 +217,7 @@ vl_dri2_screen_texture_from_drawable(struct vl_screen *vscreen, void *drawable)
       }
    }
 
-   if (i == reply->count) {
+   if (i == reply->count || !back_left) {
       free(reply);
       return NULL;
    }