summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2009-11-18 21:16:33 +0000
committerNick Mathewson <nickm@torproject.org>2009-11-18 21:16:33 +0000
commit767eb70f5016cf65c3fad8e91ded8b4362bc79b0 (patch)
tree836effbeabe61357a235786d71eac68380a3a09f
parentd7d1f1da09f32a14ff4c08dc0f1f0e0673ed5afd (diff)
downloadlibevent-767eb70f5016cf65c3fad8e91ded8b4362bc79b0.tar.gz
Fix compilation with threading disabled.
svn:r1546
-rw-r--r--defer-internal.h5
-rw-r--r--evdns.c2
-rw-r--r--event.c2
-rw-r--r--poll.c4
4 files changed, 13 insertions, 0 deletions
diff --git a/defer-internal.h b/defer-internal.h
index cde6e903..a1b1d2c8 100644
--- a/defer-internal.h
+++ b/defer-internal.h
@@ -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 135d90d3..98b3fec5 100644
--- 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 46af1e0c..9c64df66 100644
--- 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 d87bbdc6..cbfb42f6 100644
--- 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;