From 1a5220acf116b7d80c29ac5d8b7513dd4ecf0eb9 Mon Sep 17 00:00:00 2001 From: jp9000 Date: Thu, 27 Feb 2014 00:17:35 -0700 Subject: [PATCH] Fix more failure handling for CoreAudio Actually, if initializing failed at all, it would never properly uninitialize because the 'initialized' variable was never set until the very end. Instead, set the "initialized" flag from the beginning to ensure initialization. --- plugins/mac-capture/mac-audio.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/mac-capture/mac-audio.c b/plugins/mac-capture/mac-audio.c index e9ac3c643..f858201cc 100644 --- a/plugins/mac-capture/mac-audio.c +++ b/plugins/mac-capture/mac-audio.c @@ -461,6 +461,7 @@ static bool coreaudio_init_unit(struct coreaudio_data *ca) if (!ca_success(stat, ca, "coreaudio_init_unit", "instance unit")) return false; + ca->au_initialized = true; return true; } @@ -502,8 +503,7 @@ static bool coreaudio_init(struct coreaudio_data *ca) if (!ca_success(stat, ca, "coreaudio_initialize", "initialize")) goto fail; - ca->au_initialized = coreaudio_start(ca); - if (!ca->au_initialized) + if (coreaudio_start(ca)) goto fail; blog(LOG_INFO, "coreaudio: device '%s' initialized", ca->device_name);