Add some assertions to please coverity.

In event_process_active_single_queue, EVLIST_INIT must be set on any
event that uses one of the event-only closures, and so "ev" will be
set in those cases.  But coverity's worried here (CIDs numerous).  So
instead, just add the assertions that should make it happy.
This commit is contained in:
Nick Mathewson 2013-08-06 19:06:58 -04:00
parent 197abd8bf3
commit 1b065d07df

View File

@ -1519,12 +1519,15 @@ event_process_active_single_queue(struct event_base *base,
switch (evcb->evcb_closure) { switch (evcb->evcb_closure) {
case EV_CLOSURE_EVENT_SIGNAL: case EV_CLOSURE_EVENT_SIGNAL:
EVUTIL_ASSERT(ev != NULL);
event_signal_closure(base, ev); event_signal_closure(base, ev);
break; break;
case EV_CLOSURE_EVENT_PERSIST: case EV_CLOSURE_EVENT_PERSIST:
EVUTIL_ASSERT(ev != NULL);
event_persist_closure(base, ev); event_persist_closure(base, ev);
break; break;
case EV_CLOSURE_EVENT: case EV_CLOSURE_EVENT:
EVUTIL_ASSERT(ev != NULL);
EVBASE_RELEASE_LOCK(base, th_base_lock); EVBASE_RELEASE_LOCK(base, th_base_lock);
(*ev->ev_callback)( (*ev->ev_callback)(
ev->ev_fd, ev->ev_res, ev->ev_arg); ev->ev_fd, ev->ev_res, ev->ev_arg);