diff options
author | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-05 20:10:09 +0200 |
---|---|---|
committer | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-07 18:41:29 +0200 |
commit | 8cfcf9973c765f11d1b45b95b8091ef7e01d7f01 (patch) | |
tree | 9bc54d9d12cca66bb5595851e4b9fd4dcecdb8d8 /exa/exa_migration.c | |
parent | e510a77ba4d65d5d6ead514cd698f1b1e3f8a2b6 (diff) |
EXA: Migrate out pixmap in exaPrepareAccess.
Also fix exaFinishAccessGC not to use the same index for tile and stipple.
Diffstat (limited to 'exa/exa_migration.c')
-rw-r--r-- | exa/exa_migration.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/exa/exa_migration.c b/exa/exa_migration.c index 5f07a8db4..661ff40e3 100644 --- a/exa/exa_migration.c +++ b/exa/exa_migration.c @@ -152,7 +152,7 @@ exaCopyDirtyToSys (PixmapPtr pPixmap) + pBox->x1 * pPixmap->drawable.bitsPerPixel / 8, pExaPixmap->sys_pitch)) { - exaPrepareAccess(&pPixmap->drawable, EXA_PREPARE_SRC); + ExaDoPrepareAccess(&pPixmap->drawable, EXA_PREPARE_SRC); exaMemcpyBox (pPixmap, pBox, pExaPixmap->fb_ptr, pExaPixmap->fb_pitch, pExaPixmap->sys_ptr, pExaPixmap->sys_pitch); @@ -220,7 +220,7 @@ exaCopyDirtyToFb (PixmapPtr pPixmap) + pBox->x1 * pPixmap->drawable.bitsPerPixel / 8, pExaPixmap->sys_pitch)) { - exaPrepareAccess(&pPixmap->drawable, EXA_PREPARE_DEST); + ExaDoPrepareAccess(&pPixmap->drawable, EXA_PREPARE_DEST); exaMemcpyBox (pPixmap, pBox, pExaPixmap->sys_ptr, pExaPixmap->sys_pitch, pExaPixmap->fb_ptr, pExaPixmap->fb_pitch); @@ -471,7 +471,7 @@ exaAssertNotDirty (PixmapPtr pPixmap) src_pitch = pExaPixmap->fb_pitch; cpp = pPixmap->drawable.bitsPerPixel / 8; - exaPrepareAccess(&pPixmap->drawable, EXA_PREPARE_SRC); + ExaDoPrepareAccess(&pPixmap->drawable, EXA_PREPARE_SRC); while (nbox--) { int rowbytes; @@ -622,14 +622,9 @@ exaDoMigration (ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel) exaMoveInPixmap(pixmaps[i].pPix); } - /* If we couldn't fit everything in, then kick back out */ + /* If we couldn't fit everything in, abort */ for (i = 0; i < npixmaps; i++) { if (!exaPixmapIsOffscreen(pixmaps[i].pPix)) { - EXA_FALLBACK(("Pixmap %p (%dx%d) not in fb\n", pixmaps[i].pPix, - pixmaps[i].pPix->drawable.width, - pixmaps[i].pPix->drawable.height)); - for (j = 0; j < npixmaps; j++) - exaMoveOutPixmap(pixmaps[j].pPix); return; } } |