summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mesa/drivers/dri/intel/intel_buffers.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_buffers.c b/src/mesa/drivers/dri/intel/intel_buffers.c
index 3444e2905f6..f1a08c5c10c 100644
--- a/src/mesa/drivers/dri/intel/intel_buffers.c
+++ b/src/mesa/drivers/dri/intel/intel_buffers.c
@@ -166,19 +166,19 @@ intelFixupVblank(struct intel_context *intel, __DRIdrawablePrivate *dPriv)
GLint areaB = driIntersectArea( drw_rect, planeB_rect );
GLuint flags = dPriv->vblFlags;
- /* Do the stupid test: Is one of them actually disabled?
+ /* Update vblank info
*/
- if (sarea->planeA_w == 0 || sarea->planeA_h == 0) {
+ if (areaB > areaA || (areaA == areaB && areaB > 0)) {
flags = dPriv->vblFlags | VBLANK_FLAG_SECONDARY;
- } else if (sarea->planeB_w == 0 || sarea->planeB_h == 0) {
+ } else {
flags = dPriv->vblFlags & ~VBLANK_FLAG_SECONDARY;
}
- /* Update vblank info
+ /* Do the stupid test: Is one of them actually disabled?
*/
- if (areaB > areaA || (areaA == areaB && areaB > 0)) {
+ if (sarea->planeA_w == 0 || sarea->planeA_h == 0) {
flags = dPriv->vblFlags | VBLANK_FLAG_SECONDARY;
- } else {
+ } else if (sarea->planeB_w == 0 || sarea->planeB_h == 0) {
flags = dPriv->vblFlags & ~VBLANK_FLAG_SECONDARY;
}