|
@@ -530,7 +530,8 @@ pub unsafe extern "C" fn network_listener_new(
|
|
|
let id = unsafe { CStr::from_ptr(controller_id) }.to_str().unwrap();
|
|
|
|
|
|
let rt = runtime::Handle::current();
|
|
|
- rt.block_on(async {
|
|
|
+ let _block = rt.enter();
|
|
|
+ futures::executor::block_on(async {
|
|
|
match NetworkListener::new(id, Duration::from_secs(listen_timeout), callback, user_ptr).await {
|
|
|
Ok(listener) => Arc::into_raw(listener),
|
|
|
Err(e) => {
|
|
@@ -562,7 +563,9 @@ pub unsafe extern "C" fn network_listener_listen(ptr: *const NetworkListener) ->
|
|
|
let listener = ManuallyDrop::new(unsafe { Arc::from_raw(ptr) });
|
|
|
|
|
|
let rt = runtime::Handle::current();
|
|
|
- match rt.block_on(listener.listen()) {
|
|
|
+ let _guard = rt.enter();
|
|
|
+
|
|
|
+ match futures::executor::block_on(listener.listen()) {
|
|
|
Ok(_) => {
|
|
|
println!("Network listener started successfully");
|
|
|
true
|
|
@@ -586,7 +589,9 @@ pub unsafe extern "C" fn network_listener_change_handler(ptr: *const NetworkList
|
|
|
let listener = ManuallyDrop::new(unsafe { Arc::from_raw(ptr) });
|
|
|
|
|
|
let rt = runtime::Handle::current();
|
|
|
- match rt.block_on(listener.change_handler()) {
|
|
|
+ let _guard = rt.enter();
|
|
|
+
|
|
|
+ match futures::executor::block_on(listener.change_handler()) {
|
|
|
Ok(_) => {
|
|
|
println!("Network listener change listener completed successfully");
|
|
|
}
|
|
@@ -616,7 +621,8 @@ pub unsafe extern "C" fn member_listener_new(
|
|
|
let id = unsafe { CStr::from_ptr(controller_id) }.to_str().unwrap();
|
|
|
|
|
|
let rt = runtime::Handle::current();
|
|
|
- rt.block_on(async {
|
|
|
+ let _block = rt.enter();
|
|
|
+ futures::executor::block_on(async {
|
|
|
match MemberListener::new(id, Duration::from_secs(listen_timeout), callback, user_ptr).await {
|
|
|
Ok(listener) => Arc::into_raw(listener),
|
|
|
Err(e) => {
|
|
@@ -647,7 +653,8 @@ pub unsafe extern "C" fn member_listener_listen(ptr: *const MemberListener) -> b
|
|
|
|
|
|
let listener = ManuallyDrop::new(unsafe { Arc::from_raw(ptr) });
|
|
|
let rt = runtime::Handle::current();
|
|
|
- match rt.block_on(listener.listen()) {
|
|
|
+ let _guard = rt.enter();
|
|
|
+ match futures::executor::block_on(listener.listen()) {
|
|
|
Ok(_) => {
|
|
|
println!("Member listener started successfully");
|
|
|
true
|
|
@@ -671,7 +678,8 @@ pub unsafe extern "C" fn member_listener_change_handler(ptr: *const MemberListen
|
|
|
let listener = ManuallyDrop::new(unsafe { Arc::from_raw(ptr) });
|
|
|
|
|
|
let rt = runtime::Handle::current();
|
|
|
- match rt.block_on(listener.change_handler()) {
|
|
|
+ let _guard = rt.enter();
|
|
|
+ match futures::executor::block_on(listener.change_handler()) {
|
|
|
Ok(_) => {
|
|
|
println!("Member listener change listener completed successfully");
|
|
|
}
|