summaryrefslogtreecommitdiff
path: root/evutil.h
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2010-08-17 13:18:18 -0400
committerNick Mathewson <nickm@torproject.org>2010-08-17 13:18:18 -0400
commite0972c21389a45c60606ce2b842311c27fea2147 (patch)
tree5e05f7e83500e7debb4921468c0b01f5370b558c /evutil.h
parentd4977b52f07d61e215e5d5e98af2216719c06d16 (diff)
downloadlibevent-e0972c21389a45c60606ce2b842311c27fea2147.tar.gz
Use conditions instead of current_event_lock to fix a deadlock.
Avi Bab correctly noted as bug 3044479 the fact that any thread blocking on current_event_lock will do so while holding th_base_lock, making it impossible for the currently running event's callback to call any other functions that require th_base_lock. This patch switches the current_event_lock code to instead use a condition variable that we wait on if we're trying to mess with a currently-executing event, and that we signal when we're done executing a callback if anybody is waiting on it.
Diffstat (limited to 'evutil.h')
0 files changed, 0 insertions, 0 deletions