summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiago Vignatti <tiago.vignatti@nokia.com>2010-04-01 18:57:50 +0300
committerPeter Hutterer <peter.hutterer@who-t.net>2010-04-09 22:23:31 +1000
commit8c0548bc34dead67bc944a59664be6254be928bd (patch)
tree4211511757fad0ce6bdbc09b22f9948f03714866
parente7154e9375e6b624db01a787d9ec6c8cedc2eb81 (diff)
xfree86: die gracefully in the vga arbiter if AddScreen fails
vga arbiter will be locked in one device while AbortDDX will call LeaveVT routines from the other device. Fail! Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit b9ad452ec92a7dcbed680acb3f3b8ec29fa660df) Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--hw/xfree86/common/xf86Init.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index d3de6701c..09741d757 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -1245,7 +1245,9 @@ AbortDDX(void)
* we might not have been wrapped yet. Therefore enable
* screen explicitely.
*/
+ xf86VGAarbiterLock(xf86Screens[i]);
(xf86Screens[i]->LeaveVT)(i, 0);
+ xf86VGAarbiterUnlock(xf86Screens[i]);
}
}