diff options
author | Lennart Poettering <lennart@poettering.net> | 2007-07-26 13:17:34 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2007-07-26 13:17:34 +0000 |
commit | d80fd10a67e2764d301e8ff41cc271c0eee2399f (patch) | |
tree | 37bee35eef3d6deefe07fe3239bbab10a666ce42 /src/pulsecore/sink.c | |
parent | 58af737ebba2f9563deb92da0e0eae77b4e3b319 (diff) |
properly deref sink_input/source_output objects when removing them from a sink/source
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1541 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/pulsecore/sink.c')
-rw-r--r-- | src/pulsecore/sink.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index a66097bc..015cf4d5 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -671,7 +671,8 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, pa_memchunk * case PA_SINK_MESSAGE_REMOVE_INPUT: { pa_sink_input *i = userdata; - pa_hashmap_remove(s->thread_info.inputs, PA_UINT32_TO_PTR(i->index)); + if (pa_hashmap_remove(s->thread_info.inputs, PA_UINT32_TO_PTR(i->index))) + pa_sink_input_unref(i); return 0; } |