diff options
author | Eamon Walsh <ewalsh@tycho.nsa.gov> | 2007-12-13 18:38:25 -0500 |
---|---|---|
committer | Eamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil> | 2007-12-13 18:38:25 -0500 |
commit | c8feb73f5841e7812d8dfdb91f1064e2033d028c (patch) | |
tree | 4f176f28ec27a4e5bfb9c671e569838741b6bfbd /os | |
parent | 9a7ce573636e349ee2967991c7cc1407e80ae524 (diff) | |
parent | a125ce4a84f5fb5934fefebd7cfb22a83180874d (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.am | 9 | ||||
-rw-r--r-- | os/WaitFor.c | 17 | ||||
-rw-r--r-- | os/connection.c | 16 | ||||
-rw-r--r-- | os/io.c | 5 | ||||
-rw-r--r-- | os/osinit.c | 4 |
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, ¬ime); + do { + r = Select (curclient + 1, &tmask, NULL, NULL, ¬ime); + } 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, ¬ime); - if (r < 0 && GetConnectionTranslation(curclient) > 0) - CloseDownClient(clients[GetConnectionTranslation(curclient)]); + do { + r = Select (curclient + 1, &tmask, NULL, NULL, ¬ime); + } while (r < 0 && (errno == EINTR || errno == EAGAIN)); + if (r < 0) + if (GetConnectionTranslation(curclient) > 0) + CloseDownClient(clients[GetConnectionTranslation(curclient)]); } #endif } @@ -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); } } |