2009-08-28 20:30:20 +02:00
|
|
|
Index: xorg-server-1.6.3.901/exa/exa_migration.c
|
2009-08-04 21:52:16 +02:00
|
|
|
===================================================================
|
2009-08-28 20:30:20 +02:00
|
|
|
--- xorg-server-1.6.3.901.orig/exa/exa_migration.c
|
|
|
|
+++ xorg-server-1.6.3.901/exa/exa_migration.c
|
2009-08-04 21:52:16 +02:00
|
|
|
@@ -463,7 +463,11 @@ exaMigrateTowardFb (ExaMigrationPtr migr
|
2008-07-24 22:22:10 +02:00
|
|
|
exaDoMoveInPixmap(migrate);
|
|
|
|
}
|
|
|
|
|
|
|
|
- ExaOffscreenMarkUsed (pPixmap);
|
|
|
|
+ if (exaPixmapIsOffscreen(pPixmap)) {
|
|
|
|
+ exaCopyDirtyToFb (migrate);
|
|
|
|
+ ExaOffscreenMarkUsed (pPixmap);
|
|
|
|
+ } else
|
|
|
|
+ exaCopyDirtyToSys (migrate);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2009-08-04 21:52:16 +02:00
|
|
|
@@ -496,6 +500,12 @@ exaMigrateTowardSys (ExaMigrationPtr mig
|
2008-07-24 22:22:10 +02:00
|
|
|
|
|
|
|
if (pExaPixmap->score <= EXA_PIXMAP_SCORE_MOVE_OUT && pExaPixmap->area)
|
|
|
|
exaDoMoveOutPixmap(migrate);
|
|
|
|
+
|
|
|
|
+ if (exaPixmapIsOffscreen(pPixmap)) {
|
|
|
|
+ exaCopyDirtyToFb (migrate);
|
|
|
|
+ ExaOffscreenMarkUsed (pPixmap);
|
|
|
|
+ } else
|
|
|
|
+ exaCopyDirtyToSys (migrate);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|