[PATCH] exa: Accept scratch pixmaps with offscreen memory as such.

Alex Deucher alexdeucher at gmail.com
Thu Mar 19 11:15:52 PDT 2009


This fixes the xrandr rotation issues with xserver git.


On 3/19/09, Maarten Maathuis <madman2003 at gmail.com> wrote:
> ---
>   exa/exa.c |   17 ++++++++++++-----
>   1 files changed, 12 insertions(+), 5 deletions(-)
>
>  diff --git a/exa/exa.c b/exa/exa.c
>  index ecb2117..627f0da 100644
>  --- a/exa/exa.c
>  +++ b/exa/exa.c
>  @@ -427,11 +427,18 @@ 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->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) {
>
> --
>  1.6.2
>
>  _______________________________________________
>  xorg-devel mailing list
>  xorg-devel at lists.x.org
>  http://lists.x.org/mailman/listinfo/xorg-devel
>


More information about the xorg-devel mailing list