[PATCH] radeon: avoid segfault when pixmap exceed GPU capabilities
Michel Dänzer
michel at daenzer.net
Thu Nov 15 02:04:47 PST 2012
On Mit, 2012-11-14 at 12:39 -0500, j.glisse at gmail.com wrote:
> From: Jerome Glisse <jglisse at redhat.com>
>
> We might get a request for a pixmap/drawable that is too big
> for GPU capabilities in the dri2 get buffer path. In face of
> such things just return NULL to dri2 get buffer request. The
> GL driver should then use something like transparent black to
> avoid something too ugly on the screen.
>
> Signed-off-by: Jerome Glisse <jglisse at redhat.com>
> ---
> src/radeon_dri2.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
> index ebd813c..919f1f6 100644
> --- a/src/radeon_dri2.c
> +++ b/src/radeon_dri2.c
> @@ -444,6 +444,10 @@ radeon_dri2_create_buffer2(ScreenPtr pScreen,
> info->exa_force_create = TRUE;
> exaMoveInPixmap(pixmap);
> info->exa_force_create = FALSE;
> + if (exaGetPixmapDriverPrivate(pixmap) == NULL) {
> + /* this happen if pixmap is non accelerable */
> + goto error;
> + }
> }
>
> if (is_glamor_pixmap)
Does radeon_dri2_create_buffers() need similar treatment? Otherwise
Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>
--
Earthling Michel Dänzer | http://www.amd.com
Libre software enthusiast | Debian, X and DRI developer
More information about the xorg-driver-ati
mailing list