X-Git-Url: https://git.llucax.com/software/libev.git/blobdiff_plain/1fb0a278db3f57899f7eb970a4fde56377b6d9c0..99c0baac0b99f53c7a0bb4a0c5a8a10e8b97605f:/ev.h diff --git a/ev.h b/ev.h index f2ec3f2..384df3e 100644 --- a/ev.h +++ b/ev.h @@ -241,7 +241,7 @@ union ev_any_watcher #define EVMETHOD_EPOLL 0x00000004 /* linux */ #define EVMETHOD_KQUEUE 0x00000008 /* bsd */ #define EVMETHOD_DEVPOLL 0x00000010 /* solaris 8 */ /* NYI */ -#define EVMETHOD_PORT 0x00000020 /* solaris 10 */ /* NYI */ +#define EVMETHOD_PORT 0x00000020 /* solaris 10 */ /* flag bits */ #define EVFLAG_NOENV 0x01000000 /* do NOT consult environment */ @@ -269,7 +269,17 @@ void ev_set_syserr_cb (void (*cb)(const char *msg)); # if EV_MULTIPLICITY /* the default loop is the only one that handles signals and child watchers */ /* you can call this as often as you like */ -struct ev_loop *ev_default_loop (unsigned int flags); /* returns default loop */ +static struct ev_loop * +ev_default_loop (unsigned int flags) +{ + extern struct ev_loop *ev_default_loop_ptr; + extern struct ev_loop *ev_default_loop_init (unsigned int flags); + + if (!ev_default_loop_ptr) + ev_default_loop_init (flags); + + return ev_default_loop_ptr; +} /* create and destroy alternative loops that don't handle signals */ struct ev_loop *ev_loop_new (unsigned int flags);