summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel@tungstengraphics.com>2007-08-24 13:05:52 +0200
committerMichel Dänzer <michel@tungstengraphics.com>2007-08-24 13:05:52 +0200
commitc19f227b468d039c5ea136cc8a53c420da30263b (patch)
tree1049ae7f71b7148b0547d030a6e515a1dd9a0925
parent095850596114178119a8cc854716ce0cc6e05121 (diff)
EXA: Only mark offscreen memory as used when it really is.
-rw-r--r--exa/exa_migration.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/exa/exa_migration.c b/exa/exa_migration.c
index 70d8e1235..5f07a8db4 100644
--- a/exa/exa_migration.c
+++ b/exa/exa_migration.c
@@ -620,7 +620,6 @@ exaDoMigration (ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel)
/* Now, try to move them all into FB */
for (i = 0; i < npixmaps; i++) {
exaMoveInPixmap(pixmaps[i].pPix);
- ExaOffscreenMarkUsed (pixmaps[i].pPix);
}
/* If we couldn't fit everything in, then kick back out */
@@ -631,8 +630,13 @@ exaDoMigration (ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel)
pixmaps[i].pPix->drawable.height));
for (j = 0; j < npixmaps; j++)
exaMoveOutPixmap(pixmaps[j].pPix);
- break;
+ return;
}
}
+
+ /* Yay, everything's offscreen, mark memory as used */
+ for (i = 0; i < npixmaps; i++) {
+ ExaOffscreenMarkUsed (pixmaps[i].pPix);
+ }
}
}