From ed94ef79f9a2de254c6b1e97bd30fe7838b3a6e6 Mon Sep 17 00:00:00 2001 From: Todd Agulnick Date: Fri, 12 Apr 2013 11:51:46 -0700 Subject: [PATCH] osxaudio: adjust for changes to glib mutex api. --- sys/osxaudio/gstosxcoreaudiocommon.h | 4 ++-- sys/osxaudio/gstosxcoreaudiohal.c | 20 ++++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/sys/osxaudio/gstosxcoreaudiocommon.h b/sys/osxaudio/gstosxcoreaudiocommon.h index 4fade0d..c079e50 100644 --- a/sys/osxaudio/gstosxcoreaudiocommon.h +++ b/sys/osxaudio/gstosxcoreaudiocommon.h @@ -30,8 +30,8 @@ typedef struct { - GMutex *lock; - GCond *cond; + GMutex lock; + GCond cond; } PropertyMutex; gboolean gst_core_audio_bind_device (GstCoreAudio *core_audio); diff --git a/sys/osxaudio/gstosxcoreaudiohal.c b/sys/osxaudio/gstosxcoreaudiohal.c index 0bdfaec..b707af9 100644 --- a/sys/osxaudio/gstosxcoreaudiohal.c +++ b/sys/osxaudio/gstosxcoreaudiohal.c @@ -567,9 +567,9 @@ _audio_stream_format_listener (AudioObjectID inObjectID, for (i = 0; i < inNumberAddresses; i++) { if (inAddresses[i].mSelector == kAudioStreamPropertyPhysicalFormat) { - g_mutex_lock (prop_mutex->lock); - g_cond_signal (prop_mutex->cond); - g_mutex_unlock (prop_mutex->lock); + g_mutex_lock (&prop_mutex->lock); + g_cond_signal (&prop_mutex->cond); + g_mutex_unlock (&prop_mutex->lock); break; } } @@ -596,10 +596,10 @@ _audio_stream_change_format (AudioStreamID stream_id, CORE_AUDIO_FORMAT_ARGS (format)); /* Condition because SetProperty is asynchronous */ - prop_mutex.lock = g_mutex_new (); - prop_mutex.cond = g_cond_new (); + g_mutex_init (&prop_mutex.lock); + g_cond_init (&prop_mutex.cond); - g_mutex_lock (prop_mutex.lock); + g_mutex_lock (&prop_mutex.lock); /* Install the property listener to serialize the operations */ status = AudioObjectAddPropertyListener (stream_id, &formatAddress, @@ -624,7 +624,7 @@ _audio_stream_change_format (AudioStreamID stream_id, g_get_current_time (&timeout); g_time_val_add (&timeout, 250000); - if (!g_cond_timed_wait (prop_mutex.cond, prop_mutex.lock, &timeout)) { + if (!g_cond_wait_until (&prop_mutex.cond, &prop_mutex.lock, timeout.tv_sec)) { GST_LOG ("timeout..."); } @@ -658,9 +658,9 @@ done: GST_FOURCC_FORMAT, GST_FOURCC_ARGS (status)); } /* Destroy the lock and condition */ - g_mutex_unlock (prop_mutex.lock); - g_mutex_free (prop_mutex.lock); - g_cond_free (prop_mutex.cond); + g_mutex_unlock (&prop_mutex.lock); + g_mutex_clear (&prop_mutex.lock); + g_cond_clear (&prop_mutex.cond); return ret; } -- 2.7.4