From 2abcc287627568a88424782c05ff527b5817ba56 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 5 Sep 2019 13:17:00 +0200 Subject: [PATCH] jack: implement thread stop and kill --- src/pipewire-jack.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/pipewire-jack.c b/src/pipewire-jack.c index fa3d2b9cb..6506b6bfc 100644 --- a/src/pipewire-jack.c +++ b/src/pipewire-jack.c @@ -3798,15 +3798,26 @@ int jack_drop_real_time_scheduling (jack_native_thread_t thread) SPA_EXPORT int jack_client_stop_thread(jack_client_t* client, jack_native_thread_t thread) { - pw_log_warn(NAME" %p: not implemented %lu", client, thread); - return -ENOTSUP; + void* status; + + if (thread == (jack_native_thread_t)NULL) + return -1; + + pthread_join(thread, &status); + return 0; } SPA_EXPORT int jack_client_kill_thread(jack_client_t* client, jack_native_thread_t thread) { - pw_log_warn(NAME" %p: not implemented %lu", client, thread); - return -ENOTSUP; + void* status; + + if (thread == (jack_native_thread_t)NULL) + return -1; + + pthread_cancel(thread); + pthread_join(thread, &status); + return 0; } SPA_EXPORT