From 6769becac52a0a61a70e1c050db8b8483bc41930 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Tue, 22 Feb 2022 17:27:33 +0100 Subject: [PATCH] module-echo-cancel: fix leak on error Don't leak the properties on error. Use and log the error returned from the init function. --- src/modules/module-echo-cancel.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/modules/module-echo-cancel.c b/src/modules/module-echo-cancel.c index 7396fb2b5..c8cfd6a18 100644 --- a/src/modules/module-echo-cancel.c +++ b/src/modules/module-echo-cancel.c @@ -995,14 +995,16 @@ int pipewire__module_init(struct pw_impl_module *module, const char *args) else aec_props = pw_properties_new(NULL, NULL); - if (spa_audio_aec_init(impl->aec, &aec_props->dict, &impl->info)) { - pw_log_error("codec plugin %s create failed", impl->aec->name); - res = -ENOENT; - goto error; - } + res = spa_audio_aec_init(impl->aec, &aec_props->dict, &impl->info); pw_properties_free(aec_props); + if (res < 0) { + pw_log_error("codec plugin %s create failed: %s", impl->aec->name, + spa_strerror(res)); + goto error; + } + if (impl->aec->latency) { unsigned int num, denom, req_num, req_denom; unsigned int factor = 0;