From bdb7e584b633ef31f19bdb9d9e6701151e7d1bf8 Mon Sep 17 00:00:00 2001 From: Bruce Mitchener Date: Tue, 15 Dec 2020 13:17:54 +0700 Subject: [PATCH] Improve I_SETSIG check for X I/O. (#58) I_SETSIG is part of the STREAMS interface, which is only present on Solaris (among our supported platforms), so simplify this check. Other usages of I_SETSIG could be improved, but they need more investigation and perhaps removal. --- src/xinit.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/src/xinit.c b/src/xinit.c index 8036f8e..7ed4d18 100644 --- a/src/xinit.c +++ b/src/xinit.c @@ -99,13 +99,9 @@ void init_Xevent(DspInterface dsp) XSelectInput(dsp->display_id, dsp->SWGrav, GravMask); XSelectInput(dsp->display_id, dsp->NWGrav, GravMask); -#ifdef SYSVONLY -#ifndef LINUX -#ifndef MACOSX +#if defined(OS5) && defined(I_SETSIG) ioctl(ConnectionNumber(dsp->display_id), I_SETSIG, S_INPUT); /* so we see X events fast */ #endif -#endif -#endif /* SYSVONLY */ } /*end init_Xevent */ /************************************************************************/ @@ -117,13 +113,9 @@ void init_Xevent(DspInterface dsp) /************************************************************************/ void lisp_Xexit(DspInterface dsp) { -#ifdef SYSVONLY -#ifndef LINUX -#ifndef MACOSX +#if defined(OS5) && defined(I_SETSIG) ioctl(ConnectionNumber(dsp->display_id), I_SETSIG, 0); /* so no interrupts happen during */ #endif -#endif -#endif /* SYSVONLY */ XDestroySubwindows(dsp->display_id, dsp->LispWindow); XDestroyWindow(dsp->display_id, dsp->LispWindow);