Remove _event_initialized(); make event_initialized() a function(); make it consistent on windows and non-windows

This commit is contained in:
Nick Mathewson 2010-11-23 13:08:07 -05:00
parent 88be27dc06
commit 652024b6b1
3 changed files with 12 additions and 17 deletions

View File

@ -1804,15 +1804,11 @@ event_pending(const struct event *ev, short event, struct timeval *tv)
} }
int int
_event_initialized(const struct event *ev, int need_fd) event_initialized(const struct event *ev)
{ {
if (!(ev->ev_flags & EVLIST_INIT)) if (!(ev->ev_flags & EVLIST_INIT))
return 0; return 0;
#ifdef WIN32
/* XXX Is this actually a sensible thing to check? -NM */
if (need_fd && (ev)->ev_fd == (evutil_socket_t)INVALID_HANDLE_VALUE)
return 0;
#endif
return 1; return 1;
} }

View File

@ -439,7 +439,7 @@ int event_base_got_break(struct event_base *);
*/ */
#define evtimer_del(ev) event_del(ev) #define evtimer_del(ev) event_del(ev)
#define evtimer_pending(ev, tv) event_pending((ev), EV_TIMEOUT, (tv)) #define evtimer_pending(ev, tv) event_pending((ev), EV_TIMEOUT, (tv))
#define evtimer_initialized(ev) _event_initialized((ev), 0) #define evtimer_initialized(ev) event_initialized(ev)
#define evsignal_add(ev, tv) event_add((ev), (tv)) #define evsignal_add(ev, tv) event_add((ev), (tv))
#define evsignal_assign(ev, b, x, cb, arg) \ #define evsignal_assign(ev, b, x, cb, arg) \
@ -448,7 +448,7 @@ int event_base_got_break(struct event_base *);
event_new((b), (x), EV_SIGNAL|EV_PERSIST, (cb), (arg)) event_new((b), (x), EV_SIGNAL|EV_PERSIST, (cb), (arg))
#define evsignal_del(ev) event_del(ev) #define evsignal_del(ev) event_del(ev)
#define evsignal_pending(ev, tv) event_pending((ev), EV_SIGNAL, (tv)) #define evsignal_pending(ev, tv) event_pending((ev), EV_SIGNAL, (tv))
#define evsignal_initialized(ev) _event_initialized((ev), 0) #define evsignal_initialized(ev) event_initialized(ev)
typedef void (*event_callback_fn)(evutil_socket_t, short, void *); typedef void (*event_callback_fn)(evutil_socket_t, short, void *);
@ -587,20 +587,19 @@ int event_pending(const struct event *, short, struct timeval *);
/** /**
Test if an event structure might be initialized. Test if an event structure might be initialized.
The event_initialized() macro can be used to check if an event has been The event_initialized() function can be used to check if an event has been
initialized. initialized.
Warning: This macro is deprecated because it does not perform a reliable Warning: This function is only useful for distinguishing a a zeroed-out
test: While it can tell a zeroed-out piece of memory from an initialized piece of memory from an initialized event, it can easily be confused by
event, it can easily be confused by uninitialized memory. uninitialized memory. Thus, it should ONLY be used to distinguish an
initialized event from zero.
@param ev an event structure to be tested @param ev an event structure to be tested
@return 1 if the structure might be initialized, or 0 if it has not been @return 1 if the structure might be initialized, or 0 if it has not been
initialized initialized
*/ */
#define event_initialized(ev) _event_initialized((ev), 1) int event_initialized(const struct event *ev);
int _event_initialized(const struct event *, int check_fd);
/** /**
Get the signal number assigned to an event. Get the signal number assigned to an event.

View File

@ -282,7 +282,7 @@ void event_set(struct event *, evutil_socket_t, short, void (*)(evutil_socket_t,
@deprecated This macro is deprecated because its naming is inconsistent. @deprecated This macro is deprecated because its naming is inconsistent.
The recommend macro is evtimer_initialized(). The recommend macro is evtimer_initialized().
*/ */
#define timeout_initialized(ev) _event_initialized((ev), 0) #define timeout_initialized(ev) event_initialized(ev)
/** /**
@deprecated This macro is deprecated because its naming is inconsistent. @deprecated This macro is deprecated because its naming is inconsistent.
@ -309,7 +309,7 @@ void event_set(struct event *, evutil_socket_t, short, void (*)(evutil_socket_t,
@deprecated This macro is deprecated because its naming is inconsistent. @deprecated This macro is deprecated because its naming is inconsistent.
The recommend macro is evsignal_initialized(). The recommend macro is evsignal_initialized().
*/ */
#define signal_initialized(ev) _event_initialized((ev), 0) #define signal_initialized(ev) event_initialized(ev)
#ifndef EVENT_FD #ifndef EVENT_FD
/* These macros are obsolete; use event_get_fd and event_get_signal instead. */ /* These macros are obsolete; use event_get_fd and event_get_signal instead. */