while (vh) {
if (vh->lserv_wsi) {
vh->lserv_wsi->w_read.context = context;
- uv_poll_init_socket(pt->io_loop_uv,
+ n = uv_poll_init_socket(pt->io_loop_uv,
&vh->lserv_wsi->w_read.uv_watcher,
vh->lserv_wsi->sock);
+ if (n) {
+ lwsl_err("uv_poll_init failed %d, sockfd=%p\n",
+ n, (void *)(long)vh->lserv_wsi->sock);
+
+ return -1;
+ }
uv_poll_start(&vh->lserv_wsi->w_read.uv_watcher,
UV_READABLE, lws_io_cb);
}
lws_uv_sigint_cfg(context, 1, signal_cb);
- lws_uv_initloop(context, NULL, 0);
+ if (lws_uv_initloop(context, NULL, 0)) {
+ lwsl_err("lws_uv_initloop failed\n");
+
+ goto bail;
+ }
uv_timer_init(lws_uv_getloop(context, 0), &timeout_watcher);
uv_timer_start(&timeout_watcher, uv_timeout_cb_dumb_increment, 50, 50);
lws_libuv_run(context, 0);
+bail:
lws_context_destroy(context);
lwsl_notice("libwebsockets-test-server exited cleanly\n");