Module Name: xsrc
Committed By: snj
Date: Fri Oct 16 06:23:35 UTC 2009
Modified Files:
xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa [netbsd-5]: xaaGC.c
xaalocal.h
Log Message:
Pull up following revision(s) (requested by macallan in ticket #1052):
external/mit/xorg-server/dist/hw/xfree86/xaa/xaaGC.c: revision 1.2
external/mit/xorg-server/dist/hw/xfree86/xaa/xaalocal.h: revision 1.4
don't fall back to software rendering when drawing into the screen pixmap
this takes care of visible artifacts with non-mappable framebuffers like
newport and crime
To generate a diff of this commit:
cvs rdiff -u -r1.1.1.1.2.1 -r1.1.1.1.2.2 \
xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaaGC.c
cvs rdiff -u -r1.1.1.1.2.2 -r1.1.1.1.2.3 \
xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaalocal.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaaGC.c
diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaaGC.c:1.1.1.1.2.1 xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaaGC.c:1.1.1.1.2.2
--- xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaaGC.c:1.1.1.1.2.1 Thu Sep 17 03:35:21 2009
+++ xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaaGC.c Fri Oct 16 06:23:35 2009
@@ -88,7 +88,8 @@
pGC->fgPixel = 0x7fffffff;
}
- if((pDraw->type == DRAWABLE_PIXMAP) && !IS_OFFSCREEN_PIXMAP(pDraw)){
+ if((pDraw->type == DRAWABLE_PIXMAP) &&
+ !IS_OFFSCREEN_PIXMAP(pDraw) && !PIXMAP_IS_SCREEN((PixmapPtr)pDraw, pGC)) {
pGCPriv->flags = OPS_ARE_PIXMAP;
pGCPriv->changes |= changes;
Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaalocal.h
diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaalocal.h:1.1.1.1.2.2 xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaalocal.h:1.1.1.1.2.3
--- xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaalocal.h:1.1.1.1.2.2 Thu Sep 17 03:35:21 2009
+++ xsrc/external/mit/xorg-server/dist/hw/xfree86/xaa/xaalocal.h Fri Oct 16 06:23:35 2009
@@ -1710,6 +1710,9 @@
#define IS_OFFSCREEN_PIXMAP(pPix)\
((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->offscreenArea)
+#define PIXMAP_IS_SCREEN(pPix, pGC)\
+ (pPix == pGC->pScreen->GetScreenPixmap(pGC->pScreen))
+
#define PIXMAP_IS_SHARED(pPix)\
((XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pPix)))->flags & SHARED_PIXMAP)