[Mesa-dev] [PATCH] egl_dri2: swrastGetDrawableInfo: set *x, *y
Emil Velikov
emil.l.velikov at gmail.com
Thu Jun 22 15:11:32 UTC 2017
Hi Ben,
On 21 June 2017 at 16:55, Ben Crocker <bcrocker at redhat.com> wrote:
> In swrastGetDrawableInfo, set *x and *y, not just *w and *h;
> this fixes a crash later in drisw_update_tex_buffer when the
> (formerly) uninitialized x and y values are used to construct
> an address in a call to llvmpipe_transfer_map.
>
> Fixes crash in Piglit test
> "spec at egl 1.4 at eglcreatepbuffersurface and then glclear"
> (<piglit dir>/bin/egl-create-pbuffer-surface -auto)
> that occurred intermittently, e.g. when the uninitialized x and y in
> drisw_update_tex_buffer just happened to contain absurd non-zero values.
>
Good catch. Can you please include the Cc: mesa-stable... tag in the
commit message.
> Signed-off-by: Ben Crocker <bcrocker at redhat.com>
> ---
> src/egl/drivers/dri2/platform_x11.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/src/egl/drivers/dri2/platform_x11.c b/src/egl/drivers/dri2/platform_x11.c
> index 74d3a16..c64ac64 100644
> --- a/src/egl/drivers/dri2/platform_x11.c
> +++ b/src/egl/drivers/dri2/platform_x11.c
> @@ -121,6 +121,8 @@ swrastGetDrawableInfo(__DRIdrawable * draw,
> _eglLog(_EGL_WARNING, "error in xcb_get_geometry");
> free(error);
> } else {
> + *x = reply->x;
> + *y = reply->y;
I think we should set x/y to zero - a few lines further up, right next to w/h.
-Emil
More information about the mesa-dev
mailing list