Browse Source

dont abort polling on EINTR

git.mgm/mediaproxy-ng/2.1
Richard Fuchs 14 years ago
parent
commit
806920cc52
1 changed files with 6 additions and 2 deletions
  1. +6
    -2
      daemon/control.c

+ 6
- 2
daemon/control.c View File

@ -6,6 +6,7 @@
#include <pcre.h> #include <pcre.h>
#include <glib.h> #include <glib.h>
#include <stdarg.h> #include <stdarg.h>
#include <errno.h>
#include "control.h" #include "control.h"
#include "poller.h" #include "poller.h"
@ -207,8 +208,11 @@ static void control_incoming(int fd, void *p, uintptr_t u) {
next: next:
sinl = sizeof(sin); sinl = sizeof(sin);
nfd = accept(fd, (struct sockaddr *) &sin, &sinl); nfd = accept(fd, (struct sockaddr *) &sin, &sinl);
if (nfd == -1)
return;
if (nfd == -1) {
if (errno == EAGAIN || errno == EWOULDBLOCK)
return;
goto next;
}
nonblock(nfd); nonblock(nfd);
mylog(LOG_INFO, "New control connection from " DF, DP(sin)); mylog(LOG_INFO, "New control connection from " DF, DP(sin));


Loading…
Cancel
Save