summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authorTanu Kaskinen <tanuk@iki.fi>2017-11-09 14:12:34 +0200
committerTanu Kaskinen <tanuk@iki.fi>2017-11-21 15:18:26 +0200
commit6b92027c194dc719c11f2fc39cfbdca2e5e2d5c4 (patch)
tree0e2c2f3343d3dc177c3a54602e63c7226966b9df /src/modules
parent5f29b838ff28939df1fbbb85b13f51b8ad866779 (diff)
downloadpulseaudio-6b92027c194dc719c11f2fc39cfbdca2e5e2d5c4.tar.gz
echo-cancel: fix a memory leak
The pa_echo_canceller_msg object was never unreffed.
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/echo-cancel/module-echo-cancel.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/modules/echo-cancel/module-echo-cancel.c b/src/modules/echo-cancel/module-echo-cancel.c
index ee3725abd..4fc837d2a 100644
--- a/src/modules/echo-cancel/module-echo-cancel.c
+++ b/src/modules/echo-cancel/module-echo-cancel.c
@@ -2164,8 +2164,10 @@ void pa__done(pa_module*m) {
if (u->ec->done)
u->ec->done(u->ec);
- if (u->ec->msg)
+ if (u->ec->msg) {
u->ec->msg->dead = true;
+ pa_echo_canceller_msg_unref(u->ec->msg);
+ }
pa_xfree(u->ec);
}
@@ -2346,6 +2348,7 @@ int main(int argc, char* argv[]) {
u.ec->done(u.ec);
u.ec->msg->dead = true;
+ pa_echo_canceller_msg_unref(u.ec->msg);
out:
if (u.captured_file)