[Xquartz-changes] xserver: Branch 'master'
Jeremy Huddleston
jeremyhu at freedesktop.org
Sun Apr 22 20:56:49 PDT 2012
hw/xfree86/modes/xf86Rotate.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
New commits:
commit 70c745b68aa8951328d011846d9d328823ad61ad
Author: Michal Suchanek <hramrach at gmail.com>
Date: Wed Mar 28 18:12:39 2012 -0700
xfree86: workaround crash on close
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=41653
Signed-off-by: Michal Suchanek <hramrach at gmail.com>
Reviewed-by: Jeremy Huddleston <jeremyhu at apple.com>
Tested-by: Knut Petersen <Knut_Petersen at t-online.de>
diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c
index 85d7557..cbc8687 100644
--- a/hw/xfree86/modes/xf86Rotate.c
+++ b/hw/xfree86/modes/xf86Rotate.c
@@ -290,14 +290,19 @@ xf86RotateDestroy(xf86CrtcPtr crtc)
* Clean up damage structures when no crtcs are rotated
*/
if (xf86_config->rotation_damage) {
+ DrawablePtr screenDrawable = NULL;
+ if (pScreen && pScreen->root)
+ screenDrawable = &pScreen->root->drawable;
/* Free damage structure */
if (xf86_config->rotation_damage_registered) {
- DamageUnregister(&pScreen->root->drawable,
- xf86_config->rotation_damage);
+ if (screenDrawable)
+ DamageUnregister(screenDrawable,
+ xf86_config->rotation_damage);
xf86_config->rotation_damage_registered = FALSE;
DisableLimitedSchedulingLatency();
}
- DamageDestroy(xf86_config->rotation_damage);
+ if (screenDrawable)
+ DamageDestroy(xf86_config->rotation_damage);
xf86_config->rotation_damage = NULL;
}
}
More information about the Xquartz-changes
mailing list