[PATCH 1/4] Revert "exa/mixed: be more thorough about setting fb_pitch when needed"
Maarten Maathuis
madman2003 at gmail.com
Mon Nov 23 13:17:43 PST 2009
This reverts commit d4fc245115eb2cb323e06a82f9dd52518d9b6a16.
- This is causing crashes/problems for some.
---
exa/exa_migration_mixed.c | 21 ++++++++-------------
1 files changed, 8 insertions(+), 13 deletions(-)
diff --git a/exa/exa_migration_mixed.c b/exa/exa_migration_mixed.c
index 121a4ad..ea6f878 100644
--- a/exa/exa_migration_mixed.c
+++ b/exa/exa_migration_mixed.c
@@ -98,17 +98,14 @@ exaDoMigration_mixed(ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel)
if (!pExaPixmap->driverPriv)
exaCreateDriverPixmap_mixed(pPixmap);
- if (exaPixmapIsOffscreen(pPixmap)) {
- pPixmap->devKind = pExaPixmap->fb_pitch;
-
- if (pExaPixmap->pDamage) {
- ExaScreenPriv(pPixmap->drawable.pScreen);
+ if (pExaPixmap->pDamage && exaPixmapIsOffscreen(pPixmap)) {
+ ExaScreenPriv(pPixmap->drawable.pScreen);
- exaCopyDirtyToFb(pixmaps + i);
+ pPixmap->devKind = pExaPixmap->fb_pitch;
+ exaCopyDirtyToFb(pixmaps + i);
- if (pExaScr->deferred_mixed_pixmap == pPixmap)
- pExaScr->deferred_mixed_pixmap = NULL;
- }
+ if (pExaScr->deferred_mixed_pixmap == pPixmap)
+ pExaScr->deferred_mixed_pixmap = NULL;
}
pExaPixmap->offscreen = exaPixmapIsOffscreen(pPixmap);
@@ -136,9 +133,8 @@ exaMoveInPixmap_mixed(PixmapPtr pPixmap)
void
exaPrepareAccessReg_mixed(PixmapPtr pPixmap, int index, RegionPtr pReg)
{
- ExaPixmapPriv(pPixmap);
-
if (!ExaDoPrepareAccess(pPixmap, index)) {
+ ExaPixmapPriv(pPixmap);
Bool is_offscreen = exaPixmapIsOffscreen(pPixmap);
ExaMigrationRec pixmaps[1];
@@ -201,8 +197,7 @@ exaPrepareAccessReg_mixed(PixmapPtr pPixmap, int index, RegionPtr pReg)
pPixmap->devPrivate.ptr = pExaPixmap->sys_ptr;
pPixmap->devKind = pExaPixmap->sys_pitch;
pExaPixmap->offscreen = FALSE;
- } else
- pPixmap->devKind = pExaPixmap->fb_pitch;
+ }
}
/* Move back results of software rendering on system memory copy of mixed driver
--
1.6.5.2
More information about the xorg-devel
mailing list