[Mesa-stable] [Mesa-dev] [PATCH] auxiliary/vl: use the correct screen index
Marek Olšák
maraeo at gmail.com
Fri Jul 10 11:33:08 PDT 2015
I'm sure this doesn't build. "dri2_dpy" is not declared and "screen" is int.
Marek
On Fri, Jul 10, 2015 at 7:46 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> Inspired (copied) from Marek's commit for egl/x11
> commit 0b56e23e7f3(egl/dri2: use the correct screen index)
>
> Cc: 10.6 <mesa-stable at lists.freedesktop.org>
> Cc: Marek Olšák <marek.olsak at amd.com>
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
> src/gallium/auxiliary/vl/vl_winsys_dri.c | 18 +++++++++++++++---
> 1 file changed, 15 insertions(+), 3 deletions(-)
>
> diff --git a/src/gallium/auxiliary/vl/vl_winsys_dri.c b/src/gallium/auxiliary/vl/vl_winsys_dri.c
> index 7e61b88..ac2feec 100644
> --- a/src/gallium/auxiliary/vl/vl_winsys_dri.c
> +++ b/src/gallium/auxiliary/vl/vl_winsys_dri.c
> @@ -293,6 +293,16 @@ vl_screen_get_private(struct vl_screen *vscreen)
> return vscreen;
> }
>
> +static xcb_screen_t *
> +get_xcb_screen(xcb_screen_iterator_t iter, int screen)
> +{
> + for (; iter.rem; --screen, xcb_screen_next(&iter))
> + if (screen == 0)
> + return iter.data;
> +
> + return NULL;
> +}
> +
> struct vl_screen*
> vl_screen_create(Display *display, int screen)
> {
> @@ -333,9 +343,11 @@ vl_screen_create(Display *display, int screen)
> if (dri2_query == NULL || error != NULL || dri2_query->minor_version < 2)
> goto free_query;
>
> - s = xcb_setup_roots_iterator(xcb_get_setup(scrn->conn));
> - while (screen--)
> - xcb_screen_next(&s);
> + s = xcb_setup_roots_iterator(xcb_get_setup(dri2_dpy->conn));
> + screen = get_xcb_screen(s, dri2_dpy->screen);
> + if (!screen)
> + goto free_query;
> +
> driverType = XCB_DRI2_DRIVER_TYPE_DRI;
> #ifdef DRI2DriverPrimeShift
> {
> --
> 2.4.5
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-stable
mailing list