From f9783b9b6a1a79c80c6b4eba59062efbf2a4186d Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Mon, 14 Nov 2011 11:58:25 +0100 Subject: [PATCH] mutex: handle gracefully if a PTHREAD_PRIO_INHERIT protocol cannot be set This adds an additional check for unavailable PTHREAD_PRIO_INHERIT to the fallback work done in ca717643ee768307475fc36ea29d920a13db0a8e See bug #42715 --- src/pulsecore/mutex-posix.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pulsecore/mutex-posix.c b/src/pulsecore/mutex-posix.c index 634087d..5045af7 100644 --- a/src/pulsecore/mutex-posix.c +++ b/src/pulsecore/mutex-posix.c @@ -50,8 +50,10 @@ pa_mutex* pa_mutex_new(pa_bool_t recursive, pa_bool_t inherit_priority) { pa_assert_se(pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE) == 0); #ifdef HAVE_PTHREAD_PRIO_INHERIT - if (inherit_priority) - pa_assert_se(pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT) == 0); + if (inherit_priority) { + r = pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT); + pa_assert_se(r == 0 || r == ENOTSUP); + } #endif m = pa_xnew(pa_mutex, 1); -- 1.7.7