diff options
author | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-17 20:33:56 +0200 |
---|---|---|
committer | Michel Dänzer <michel@tungstengraphics.com> | 2007-09-17 20:40:13 +0200 |
commit | 547ad2125ece93bbe01f6d09a3baf176ebd16bb3 (patch) | |
tree | ddd05fd2416f3dc0ccec84815222b1fbbbf2e86a /exa | |
parent | 56cc24ffb21f7fd41f9ea9e8f969aa85021b9f53 (diff) |
EXA: Make sure driver hooks get correct offscreen offsets from exaCopyDirty.
This should ensure the driver UploadTo/DownloadFromScreen hooks can always
work as intended.
Diffstat (limited to 'exa')
-rw-r--r-- | exa/exa_migration.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/exa/exa_migration.c b/exa/exa_migration.c index ace90765d..c0e022ca7 100644 --- a/exa/exa_migration.c +++ b/exa/exa_migration.c @@ -127,7 +127,7 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc, ExaPixmapPriv (pPixmap); RegionPtr damage = DamageRegion (pExaPixmap->pDamage); RegionRec CopyReg; - CARD8 *save_ptr; + Bool save_offscreen; int save_pitch; BoxPtr pBox; int nbox; @@ -176,9 +176,9 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc, pBox = REGION_RECTS(&CopyReg); nbox = REGION_NUM_RECTS(&CopyReg); - save_ptr = pPixmap->devPrivate.ptr; + save_offscreen = pExaPixmap->offscreen; save_pitch = pPixmap->devKind; - pPixmap->devPrivate.ptr = pExaPixmap->fb_ptr; + pExaPixmap->offscreen = TRUE; pPixmap->devKind = pExaPixmap->fb_pitch; while (nbox--) { @@ -216,7 +216,7 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc, else sync (pPixmap->drawable.pScreen); - pPixmap->devPrivate.ptr = save_ptr; + pExaPixmap->offscreen = save_offscreen; pPixmap->devKind = save_pitch; /* The copied bits are now valid in destination */ |