]> granicus.if.org Git - libevent/commitdiff
Fix compilation with threading disabled.
authorNick Mathewson <nickm@torproject.org>
Wed, 18 Nov 2009 21:16:33 +0000 (21:16 +0000)
committerNick Mathewson <nickm@torproject.org>
Wed, 18 Nov 2009 21:16:33 +0000 (21:16 +0000)
svn:r1546

defer-internal.h
evdns.c
event.c
poll.c

index cde6e903a9bb0b99618b5dbb794fbcaec9a3cd40..a1b1d2c8a9b253f5f72db71b3faea5523f1cbdce 100644 (file)
@@ -81,6 +81,10 @@ void event_deferred_cb_cancel(struct deferred_cb_queue *, struct deferred_cb *);
  */
 void event_deferred_cb_schedule(struct deferred_cb_queue *, struct deferred_cb *);
 
+#ifdef _EVENT_DISABLE_THREAD_SUPPORT
+#define LOCK_DEFERRED_QUEUE(q) (void)0
+#define UNLOCK_DEFERRED_QUEUE(q) (void)0
+#else
 #define LOCK_DEFERRED_QUEUE(q)                                         \
        do {                                                            \
                if ((q)->lock)                                          \
@@ -94,6 +98,7 @@ void event_deferred_cb_schedule(struct deferred_cb_queue *, struct deferred_cb *
                        _evthread_locking_fn(EVTHREAD_UNLOCK|EVTHREAD_WRITE, \
                            (q)->lock);                                 \
        } while (0)
+#endif
 
 #ifdef __cplusplus
 }
diff --git a/evdns.c b/evdns.c
index 135d90d3bed54bf86678467dd545c98b729b3de4..98b3fec5b28e573ffecec965abe77842ac2b315e 100644 (file)
--- a/evdns.c
+++ b/evdns.c
@@ -2114,7 +2114,9 @@ evdns_server_request_get_requesting_addr(struct evdns_server_request *_req, stru
 static void
 evdns_request_timeout_callback(evutil_socket_t fd, short events, void *arg) {
        struct evdns_request *const req = (struct evdns_request *) arg;
+#ifndef _EVENT_DISABLE_THREAD_SUPPORT
        struct evdns_base *base = req->base;
+#endif
        (void) fd;
        (void) events;
 
diff --git a/event.c b/event.c
index 46af1e0cd0b01962eb52729efb8b386a6539c6e4..9c64df6633ebfeb9ef87c6f888f793c601bda85a 100644 (file)
--- a/event.c
+++ b/event.c
@@ -347,6 +347,7 @@ event_base_new_with_config(struct event_config *cfg)
        base->th_notify_fd[0] = -1;
        base->th_notify_fd[1] = -1;
 
+#ifndef _EVENT_DISABLE_THREAD_SUPPORT
        if (!cfg || !(cfg->flags & EVENT_BASE_FLAG_NOLOCK)) {
                int r;
                EVTHREAD_ALLOC_LOCK(base->th_base_lock);
@@ -358,6 +359,7 @@ event_base_new_with_config(struct event_config *cfg)
                        return NULL;
                }
        }
+#endif
 
 #ifdef WIN32
        if (cfg && (cfg->flags & EVENT_BASE_FLAG_STARTUP_IOCP))
diff --git a/poll.c b/poll.c
index d87bbdc603121dc2df5ab7d2ed100775e98aa84f..cbfb42f6cfd3b035fb43ddd96dc51c213005df35 100644 (file)
--- a/poll.c
+++ b/poll.c
@@ -125,6 +125,7 @@ poll_dispatch(struct event_base *base, struct timeval *tv)
 
        nfds = pop->nfds;
 
+#ifndef _EVENT_DISABLE_THREAD_SUPPORT
        if (base->th_base_lock) {
                /* If we're using this backend in a multithreaded setting,
                 * then we need to work on a copy of event_set, so that we can
@@ -147,6 +148,9 @@ poll_dispatch(struct event_base *base, struct timeval *tv)
        } else {
                event_set = pop->event_set;
        }
+#else
+       event_set = pop->event_set;
+#endif
 
        if (tv != NULL)
                msec = tv->tv_sec * 1000 + (tv->tv_usec + 999) / 1000;