diff --git a/ChangeLog b/ChangeLog index 3ea95efc3..488b54e3e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2006-03-15 Eric Anholt + + * exa/exa_migration.c: (exaMoveInPixmap): + Don't let pinned pixmaps get migrated in when using the "Always" + migration scheme. This notably keeps the visible screen from getting + migrated in to a new location in framebuffer. + + Reported by: Michel Dänzer. + 2006-03-15 Adam Jackson * hw/xfree86/loader/loadmod.c: diff --git a/exa/exa_migration.c b/exa/exa_migration.c index ce4ce7455..68f88047c 100644 --- a/exa/exa_migration.c +++ b/exa/exa_migration.c @@ -171,6 +171,9 @@ exaMoveInPixmap (PixmapPtr pPixmap) char *dst, *src; int i; + if (exaPixmapIsPinned(pPixmap)) + return; + DBG_MIGRATE (("-> 0x%lx (0x%x) (%dx%d)\n", pPixmap->drawable.id, (ExaGetPixmapPriv(pPixmap)->area ? ExaGetPixmapPriv(pPixmap)->area->offset : 0),