Don't destroy ev/uv loops if they haven't been created yet
diff --git a/lib/libev.c b/lib/libev.c
index 40db6ed..43c53d9 100644
--- a/lib/libev.c
+++ b/lib/libev.c
@@ -138,6 +138,9 @@
if (!(context->options & LWS_SERVER_OPTION_LIBEV))
return;
+ if (!pt->io_loop_ev)
+ return;
+
ev_io_stop(pt->io_loop_ev, &pt->w_accept.ev_watcher);
if (context->use_ev_sigint)
ev_signal_stop(pt->io_loop_ev,
diff --git a/lib/libuv.c b/lib/libuv.c
index e3d68c6..461dc3e 100644
--- a/lib/libuv.c
+++ b/lib/libuv.c
@@ -124,6 +124,9 @@
if (!(context->options & LWS_SERVER_OPTION_LIBUV))
return;
+ if (!pt->io_loop_uv)
+ return;
+
if (context->use_ev_sigint)
uv_signal_stop(&pt->w_sigint.uv_watcher);
for (m = 0; m < ARRAY_SIZE(sigs); m++)