summaryrefslogtreecommitdiff
path: root/os
diff options
context:
space:
mode:
authorEamon Walsh <ewalsh@tycho.nsa.gov>2007-12-13 18:38:25 -0500
committerEamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil>2007-12-13 18:38:25 -0500
commitc8feb73f5841e7812d8dfdb91f1064e2033d028c (patch)
tree4f176f28ec27a4e5bfb9c671e569838741b6bfbd /os
parent9a7ce573636e349ee2967991c7cc1407e80ae524 (diff)
parenta125ce4a84f5fb5934fefebd7cfb22a83180874d (diff)
Merge branch 'master' into XACE-SELINUX
Conflicts: Xext/EVI.c Xext/bigreq.c Xext/cup.c Xext/dpms.c Xext/fontcache.c Xext/mitmisc.c Xext/xcmisc.c Xext/xf86bigfont.c Xext/xtest.c configure.ac dbe/dbe.c hw/darwin/darwin.h hw/darwin/darwinEvents.c hw/darwin/iokit/xfIOKit.h hw/darwin/iokit/xfIOKitCursor.c hw/darwin/quartz/fullscreen/fullscreen.c hw/darwin/quartz/fullscreen/quartzCursor.c hw/darwin/quartz/quartz.c hw/darwin/quartz/quartzCommon.h hw/darwin/quartz/quartzCursor.c hw/darwin/quartz/xpr/dri.c hw/darwin/quartz/xpr/dristruct.h hw/darwin/quartz/xpr/xprCursor.c hw/darwin/quartz/xpr/xprFrame.c hw/xfree86/modes/xf86RandR12.c include/cursor.h miext/rootless/rootlessCommon.h miext/rootless/rootlessScreen.c miext/rootless/rootlessWindow.c render/picturestr.h Trying to pick up the pieces from the darwin churn here...
Diffstat (limited to 'os')
-rw-r--r--os/Makefile.am9
-rw-r--r--os/WaitFor.c17
-rw-r--r--os/connection.c16
-rw-r--r--os/io.c5
-rw-r--r--os/osinit.c4
5 files changed, 15 insertions, 36 deletions
diff --git a/os/Makefile.am b/os/Makefile.am
index a11982421..ce6058538 100644
--- a/os/Makefile.am
+++ b/os/Makefile.am
@@ -1,4 +1,4 @@
-noinst_LTLIBRARIES = libos.la libcwrapper.la
+noinst_LTLIBRARIES = libos.la
AM_CFLAGS = $(DIX_CFLAGS)
@@ -36,13 +36,6 @@ if NEED_STRLCAT
libos_la_SOURCES += $(STRLCAT_SRCS)
endif
-libcwrapper_la_SOURCES = \
- $(top_srcdir)/hw/xfree86/os-support/shared/libc_wrapper.c
-libcwrapper_la_CFLAGS = \
- -DSELF_CONTAINED_WRAPPER \
- -I$(top_srcdir)/hw/xfree86/os-support \
- $(AM_CFLAGS)
-
EXTRA_DIST = $(SECURERPC_SRCS) $(INTERNALMALLOC_SRCS) \
$(XDMCP_SRCS) $(STRLCAT_SRCS)
diff --git a/os/WaitFor.c b/os/WaitFor.c
index cfba251b0..c58f24888 100644
--- a/os/WaitFor.c
+++ b/os/WaitFor.c
@@ -257,7 +257,7 @@ WaitForSomething(int *pClientsReady)
FatalError("WaitForSomething(): select: errno=%d\n",
selecterr);
}
- else if (selecterr != EINTR)
+ else if (selecterr != EINTR && selecterr != EAGAIN)
{
ErrorF("WaitForSomething(): select: errno=%d\n",
selecterr);
@@ -410,21 +410,6 @@ WaitForSomething(int *pClientsReady)
return nready;
}
-#if 0
-/*
- * This is not always a macro.
- */
-ANYSET(FdMask *src)
-{
- int i;
-
- for (i=0; i<mskcnt; i++)
- if (src[ i ])
- return (TRUE);
- return (FALSE);
-}
-#endif
-
/* If time has rewound, re-run every affected timer.
* Timers might drop out of the list, so we have to restart every time. */
static void
diff --git a/os/connection.c b/os/connection.c
index e0bc18a3c..3b5742c2b 100644
--- a/os/connection.c
+++ b/os/connection.c
@@ -1048,9 +1048,12 @@ CheckConnections(void)
curclient = curoff + (i * (sizeof(fd_mask)*8));
FD_ZERO(&tmask);
FD_SET(curclient, &tmask);
- r = Select (curclient + 1, &tmask, NULL, NULL, &notime);
+ do {
+ r = Select (curclient + 1, &tmask, NULL, NULL, &notime);
+ } while (r < 0 && (errno == EINTR || errno == EAGAIN));
if (r < 0)
- CloseDownClient(clients[ConnectionTranslation[curclient]]);
+ if (ConnectionTranslation[curclient] > 0)
+ CloseDownClient(clients[ConnectionTranslation[curclient]]);
mask &= ~((fd_mask)1 << curoff);
}
}
@@ -1061,9 +1064,12 @@ CheckConnections(void)
curclient = XFD_FD(&savedAllClients, i);
FD_ZERO(&tmask);
FD_SET(curclient, &tmask);
- r = Select (curclient + 1, &tmask, NULL, NULL, &notime);
- if (r < 0 && GetConnectionTranslation(curclient) > 0)
- CloseDownClient(clients[GetConnectionTranslation(curclient)]);
+ do {
+ r = Select (curclient + 1, &tmask, NULL, NULL, &notime);
+ } while (r < 0 && (errno == EINTR || errno == EAGAIN));
+ if (r < 0)
+ if (GetConnectionTranslation(curclient) > 0)
+ CloseDownClient(clients[GetConnectionTranslation(curclient)]);
}
#endif
}
diff --git a/os/io.c b/os/io.c
index 36abe1332..968f40a54 100644
--- a/os/io.c
+++ b/os/io.c
@@ -57,9 +57,8 @@ SOFTWARE.
#include <dix-config.h>
#endif
-#if 0
-#define DEBUG_COMMUNICATION
-#endif
+#undef DEBUG_COMMUNICATION
+
#ifdef WIN32
#include <X11/Xwinsock.h>
#endif
diff --git a/os/osinit.c b/os/osinit.c
index 1f09f068e..1bc8624dc 100644
--- a/os/osinit.c
+++ b/os/osinit.c
@@ -194,10 +194,6 @@ OsInit(void)
rlim.rlim_cur = limitNoFile;
else
rlim.rlim_cur = rlim.rlim_max;
-#if 0
- if (rlim.rlim_cur > MAXSOCKS)
- rlim.rlim_cur = MAXSOCKS;
-#endif
(void)setrlimit(RLIMIT_NOFILE, &rlim);
}
}