From c519933eb113f6a41d757e26dba311cf28051d1f Mon Sep 17 00:00:00 2001 From: jp9000 Date: Thu, 27 Feb 2014 00:14:50 -0700 Subject: [PATCH] Fix a case where audio wouldn't free correctly If coreaudio_start failed, it wouldn't free the audio data properly. Fixed that issue. --- plugins/mac-capture/mac-audio.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/plugins/mac-capture/mac-audio.c b/plugins/mac-capture/mac-audio.c index 84920836e..e9ac3c643 100644 --- a/plugins/mac-capture/mac-audio.c +++ b/plugins/mac-capture/mac-audio.c @@ -475,7 +475,6 @@ static bool coreaudio_init(struct coreaudio_data *ca) return false; if (!coreaudio_get_device_name(ca)) return false; - if (!coreaudio_init_unit(ca)) return false; @@ -504,16 +503,10 @@ static bool coreaudio_init(struct coreaudio_data *ca) goto fail; ca->au_initialized = coreaudio_start(ca); + if (!ca->au_initialized) + goto fail; - if (!ca->au_initialized) { - buf_list_free(ca->buf_list); - ca->buf_list = NULL; - } else { - blog(LOG_INFO, "coreaudio: device '%s' initialized", - ca->device_name); - - } - + blog(LOG_INFO, "coreaudio: device '%s' initialized", ca->device_name); return ca->au_initialized; fail: