mirror of
https://github.com/X11Libre/xserver.git
synced 2026-10-09 23:22:22 +00:00
xfree86: drop ddx-specific SIGIO blocking
The hooks are left for this cycle, we can drop it next cycle once the drivers that need it (e.g. wacom) have been updated. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
parent
ff67135bec
commit
5d309af2ed
5 changed files with 25 additions and 30 deletions
|
|
@ -132,7 +132,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
|
|||
struct sigaction sa;
|
||||
struct sigaction osa;
|
||||
int i;
|
||||
int blocked;
|
||||
int installed = FALSE;
|
||||
|
||||
if (!xf86Info.useSIGIO)
|
||||
|
|
@ -142,7 +141,7 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
|
|||
if (!xf86SigIOFuncs[i].f) {
|
||||
if (xf86IsPipe(fd))
|
||||
return 0;
|
||||
blocked = xf86BlockSIGIO();
|
||||
OsBlockSIGIO();
|
||||
#ifdef O_ASYNC
|
||||
if (fcntl(fd, F_SETFL, fcntl(fd, F_GETFL) | O_ASYNC) == -1) {
|
||||
xf86Msg(X_WARNING, "fcntl(%d, O_ASYNC): %s\n",
|
||||
|
|
@ -170,7 +169,7 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
|
|||
}
|
||||
#endif
|
||||
if (!installed) {
|
||||
xf86UnblockSIGIO(blocked);
|
||||
OsReleaseSIGIO();
|
||||
return 0;
|
||||
}
|
||||
sigemptyset(&sa.sa_mask);
|
||||
|
|
@ -186,7 +185,7 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
|
|||
if (fd >= xf86SigIOMaxFd)
|
||||
xf86SigIOMaxFd = fd + 1;
|
||||
FD_SET(fd, &xf86SigIOMask);
|
||||
xf86UnblockSIGIO(blocked);
|
||||
OsReleaseSIGIO();
|
||||
return 1;
|
||||
}
|
||||
/* Allow overwriting of the closure and callback */
|
||||
|
|
|
|||
Loading…
Reference in a new issue