From 09d2795852bf3217e944ceaea8f3fddf538ada40 Mon Sep 17 00:00:00 2001 From: Genrikh Fetischev Date: Mon, 6 Mar 2023 11:34:59 +0100 Subject: [PATCH] exposed loop defer function from capi (#1579) Co-authored-by: g.fetishev --- capi/libuwebsockets.cpp | 9 +++++++++ capi/libuwebsockets.h | 1 + 2 files changed, 10 insertions(+) diff --git a/capi/libuwebsockets.cpp b/capi/libuwebsockets.cpp index 9cad907..a332e8e 100644 --- a/capi/libuwebsockets.cpp +++ b/capi/libuwebsockets.cpp @@ -23,6 +23,7 @@ #include "libuwebsockets.h" #include #include "App.h" +#include "ClientApp.h" #include extern "C" { @@ -1348,4 +1349,12 @@ extern "C" { return (struct us_loop_t *)uWS::Loop::get(existing_native_loop); } + void uws_loop_defer(us_loop_t *loop, void( cb(void *user_data) ), void *user_data) + { + uWS::Loop *loop_instance = (uWS::Loop *)loop; + loop_instance->defer([cb, user_data](){ + cb(user_data); + }); + + } } diff --git a/capi/libuwebsockets.h b/capi/libuwebsockets.h index 33182f2..784db8f 100644 --- a/capi/libuwebsockets.h +++ b/capi/libuwebsockets.h @@ -250,6 +250,7 @@ extern "C" DLL_EXPORT struct us_loop_t *uws_get_loop(); DLL_EXPORT struct us_loop_t *uws_get_loop_with_native(void* existing_native_loop); + DLL_EXPORT void uws_loop_defer(struct us_loop_t *loop, void( cb(void *user_data) ), void *user_data); #ifdef __cplusplus }