[PATCH 3/4] xfree86: In InitOutput, only call OsReleaseSIGIO if OsBlockSIGIO was called
Keith Packard
keithp at keithp.com
Mon Jul 9 16:38:14 PDT 2012
Otherwise, OsReleaseSIGIO will complain, or perhaps something worse
will happen (if SIGIO actually needs to be blocked here).
Signed-off-by: Keith Packard <keithp at keithp.com>
---
hw/xfree86/common/xf86Init.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index 058d09f..9c31d82 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -401,6 +401,7 @@ InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv)
MessageType pix24From = X_DEFAULT;
Bool pix24Fail = FALSE;
Bool autoconfig = FALSE;
+ Bool sigio_blocked = FALSE;
GDevPtr configured_device;
xf86Initialising = TRUE;
@@ -819,6 +820,7 @@ InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv)
#endif
xf86AccessEnter();
OsBlockSIGIO();
+ sigio_blocked = TRUE;
}
}
@@ -924,7 +926,8 @@ InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv)
AttachUnboundGPU(xf86Screens[0]->pScreen, xf86GPUScreens[i]->pScreen);
xf86VGAarbiterWrapFunctions();
- OsReleaseSIGIO();
+ if (sigio_blocked)
+ OsReleaseSIGIO();
xf86InitOrigins();
--
1.7.10.4
More information about the xorg-devel
mailing list