[prev in list] [next in list] [prev in thread] [next in thread]
List: freedesktop-xorg-devel
Subject: [PATCH] exa: Accept scratch pixmaps with offscreen memory as such.
From: michel () daenzer ! net (Michel =?ISO-8859-1?Q?D=E4nzer?=)
Date: 2009-03-19 19:38:09
Message-ID: 1237491489.5256.13955.camel () thor ! local
[Download RAW message or body]
On Don, 2009-03-19 at 19:54 +0100, Maarten Maathuis wrote:
> ---
> exa/exa.c | 18 +++++++++++++-----
> 1 files changed, 13 insertions(+), 5 deletions(-)
>
> diff --git a/exa/exa.c b/exa/exa.c
> index ecb2117..a8e5374 100644
> --- a/exa/exa.c
> +++ b/exa/exa.c
> @@ -427,11 +427,19 @@ exaModifyPixmapHeader(PixmapPtr pPixmap, int width, int height, int depth,
> if (devKind > 0)
> pExaPixmap->sys_pitch = devKind;
>
> - /* Is this the framebuffer (for classic exa)? */
> - if (pPixData && pPixData == pExaScr->info->memoryBase) {
> - pExaPixmap->fb_ptr = pPixData;
> - pExaPixmap->fb_pitch = devKind;
> - pExaPixmap->offscreen = TRUE;
> + /* Classic EXA:
> + * - Framebuffer.
> + * - Scratch pixmap with offscreen memory.
> + */
> + if (!(pExaScr->info->flags & EXA_HANDLES_PIXMAPS) &&
> + pExaScr->info->memoryBase && pPixData) {
> + if ((CARD8 *)pPixData >= pExaScr->info->memoryBase &&
> + ((CARD8 *)pPixData - pExaScr->info->memoryBase) <
> + pExaScr->info->memorySize) {
> + pExaPixmap->fb_ptr = pPixData;
> + pExaPixmap->fb_pitch = devKind;
> + pExaPixmap->offscreen = TRUE;
> + }
> }
>
> if (width > 0 && height > 0 && bitsPerPixel > 0) {
Looks good, thanks.
--
Earthling Michel D?nzer | http://www.vmware.com
Libre software enthusiast | Debian, X and DRI developer
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic