diff options
| author | root <root> | 2007-11-04 15:58:49 +0000 | 
|---|---|---|
| committer | root <root> | 2007-11-04 15:58:49 +0000 | 
| commit | 5e20ccfe261679c78f9aa365ac087fb0700e0f2b (patch) | |
| tree | 1a45e376caae037cc6a6bedbf0f7d95fde17701d /event.c | |
| parent | baf84e3741d88472c270efb118be8e3621ebe2d8 (diff) | |
better destroy support, separate into default loop and additional loops
Diffstat (limited to 'event.c')
| -rw-r--r-- | event.c | 12 | 
1 files changed, 9 insertions, 3 deletions
| @@ -32,6 +32,7 @@  #include <stddef.h>  #include <stdlib.h>  #include <sys/time.h> +#include <assert.h>  #include "event.h" @@ -49,7 +50,7 @@ struct event_base    int dummy;  }; -static struct event_base x_base, *x_cur; +static struct event_base *x_cur;  static void  tv_set (struct timeval *tv, ev_tstamp at) @@ -82,9 +83,14 @@ const char *event_get_method (void)  void *event_init (void)  {  #if EV_MULTIPLICITY -  x_cur = (struct event_base *)ev_loop_new (EVMETHOD_AUTO); +  if (x_cur) +    x_cur = (struct event_base *)ev_loop_new (EVMETHOD_AUTO); +  else +    x_cur = ev_default_loop (EVMETHOD_AUTO);  #else -  x_cur = &x_base; +  assert (("multiple event bases not supported when not compiled with EV_MULTIPLICITY", !x_cur)); + +  x_cur = (struct event_base *)ev_default_loop (EVMETHOD_AUTO);  #endif    return x_cur; | 
