68 lines
2.2 KiB
Diff
68 lines
2.2 KiB
Diff
|
|
From 00b7eee0e0116ec78b41db24da510e655ec28c4c Mon Sep 17 00:00:00 2001
|
||
|
|
From: Luo Yifan <luoyifan_yewu@cmss.chinamobile.com>
|
||
|
|
Date: Wed, 20 Nov 2024 11:08:20 +0800
|
||
|
|
Subject: [PATCH] jackaudio: use ifdefs to hide unavailable functions
|
||
|
|
MIME-Version: 1.0
|
||
|
|
Content-Type: text/plain; charset=UTF-8
|
||
|
|
Content-Transfer-Encoding: 8bit
|
||
|
|
|
||
|
|
cherry picked from commit ead789eb46a7df4eaab9e14e29e1d0d2a379988d
|
||
|
|
|
||
|
|
On Windows the jack_set_thread_creator() function and on MacOS the
|
||
|
|
pthread_setname_np() function with a thread pointer paramater is
|
||
|
|
not available. Use #ifdefs to remove the jack_set_thread_creator()
|
||
|
|
function call and the qjack_thread_creator() function in both
|
||
|
|
cases.
|
||
|
|
|
||
|
|
The qjack_thread_creator() function just sets the name of the
|
||
|
|
created thread for debugging purposes and isn't really necessary.
|
||
|
|
|
||
|
|
From the jack_set_thread_creator() documentation:
|
||
|
|
(...)
|
||
|
|
|
||
|
|
No normal application/client should consider calling this. (...)
|
||
|
|
|
||
|
|
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/785
|
||
|
|
Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>
|
||
|
|
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
|
||
|
|
Message-Id: <20211226154017.6067-1-vr_qemu@t-online.de>
|
||
|
|
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||
|
|
Signed-off-by: Luo Yifan <luoyifan_yewu@cmss.chinamobile.com>
|
||
|
|
---
|
||
|
|
audio/jackaudio.c | 4 ++++
|
||
|
|
1 file changed, 4 insertions(+)
|
||
|
|
|
||
|
|
diff --git a/audio/jackaudio.c b/audio/jackaudio.c
|
||
|
|
index e7de6d5433..317009e936 100644
|
||
|
|
--- a/audio/jackaudio.c
|
||
|
|
+++ b/audio/jackaudio.c
|
||
|
|
@@ -622,6 +622,7 @@ static void qjack_enable_in(HWVoiceIn *hw, bool enable)
|
||
|
|
ji->c.enabled = enable;
|
||
|
|
}
|
||
|
|
|
||
|
|
+#if !defined(WIN32) && defined(CONFIG_PTHREAD_SETNAME_NP_W_TID)
|
||
|
|
static int qjack_thread_creator(jack_native_thread_t *thread,
|
||
|
|
const pthread_attr_t *attr, void *(*function)(void *), void *arg)
|
||
|
|
{
|
||
|
|
@@ -635,6 +636,7 @@ static int qjack_thread_creator(jack_native_thread_t *thread,
|
||
|
|
|
||
|
|
return ret;
|
||
|
|
}
|
||
|
|
+#endif
|
||
|
|
|
||
|
|
static void *qjack_init(Audiodev *dev)
|
||
|
|
{
|
||
|
|
@@ -687,7 +689,9 @@ static void register_audio_jack(void)
|
||
|
|
{
|
||
|
|
qemu_mutex_init(&qjack_shutdown_lock);
|
||
|
|
audio_driver_register(&jack_driver);
|
||
|
|
+#if !defined(WIN32) && defined(CONFIG_PTHREAD_SETNAME_NP_W_TID)
|
||
|
|
jack_set_thread_creator(qjack_thread_creator);
|
||
|
|
+#endif
|
||
|
|
jack_set_error_function(qjack_error);
|
||
|
|
jack_set_info_function(qjack_info);
|
||
|
|
}
|
||
|
|
--
|
||
|
|
2.41.0.windows.1
|
||
|
|
|