From 828b6eb11dca2dd3f7a556d230928a2990ebe9a5 Mon Sep 17 00:00:00 2001 From: Ryan Dahl Date: Mon, 12 Sep 2011 11:32:31 -0700 Subject: [PATCH] unix: remove uv_init --- src/unix/core.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/unix/core.c b/src/unix/core.c index 57306ac002..fec256719a 100644 --- a/src/unix/core.c +++ b/src/unix/core.c @@ -65,17 +65,6 @@ static void uv__finish_close(uv_handle_t* handle); #endif -void uv_init() { - default_loop_ptr = &default_loop_struct; -#if defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 - default_loop_struct.ev = ev_default_loop(EVBACKEND_KQUEUE); -#else - default_loop_struct.ev = ev_default_loop(EVFLAG_AUTO); -#endif - ev_set_userdata(default_loop_struct.ev, default_loop_ptr); -} - - void uv_close(uv_handle_t* handle, uv_close_cb close_cb) { uv_udp_t* udp; uv_async_t* async; @@ -176,6 +165,15 @@ void uv_loop_delete(uv_loop_t* loop) { uv_loop_t* uv_default_loop() { + if (!default_loop_ptr) { + default_loop_ptr = &default_loop_struct; +#if defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060 + default_loop_struct.ev = ev_default_loop(EVBACKEND_KQUEUE); +#else + default_loop_struct.ev = ev_default_loop(EVFLAG_AUTO); +#endif + ev_set_userdata(default_loop_struct.ev, default_loop_ptr); + } assert(default_loop_ptr->ev == EV_DEFAULT_UC); return default_loop_ptr; }