enhanced MARC21 excration such that all full text fields are found, not only the...
[pazpar2-moved-to-github.git] / src / eventl.c
index c29d98c..980036e 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: eventl.c,v 1.5 2007-04-10 08:48:56 adam Exp $
+/* $Id: eventl.c,v 1.8 2007-10-02 07:50:12 adam Exp $
    Copyright (c) 2006-2007, Index Data.
 
 This file is part of Pazpar2.
@@ -42,6 +42,7 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #else
 #include <unistd.h>
 #endif
+#include <sys/time.h>
 #include <stdlib.h>
 #include <errno.h>
 #include <string.h>
@@ -83,7 +84,7 @@ int event_loop(IOCHAN *iochans)
        FD_ZERO(&out);
        FD_ZERO(&except);
        timeout = &to; /* hang on select */
-       to.tv_sec = 30;
+       to.tv_sec = 15;
        to.tv_usec = 0;
        max = 0;
        for (p = *iochans; p; p = p->next)
@@ -100,6 +101,8 @@ int event_loop(IOCHAN *iochans)
                FD_SET(p->fd, &except);
            if (p->fd > max)
                max = p->fd;
+            if (p->max_idle && p->max_idle < to.tv_sec)
+                to.tv_sec = p->max_idle;
        }
        if ((res = select(max + 1, &in, &out, &except, timeout)) < 0)
        {