summaryrefslogtreecommitdiffstats
path: root/src/pulsecore/source-output.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2007-07-26 13:18:50 +0000
committerLennart Poettering <lennart@poettering.net>2007-07-26 13:18:50 +0000
commit222a6d270ed49d50d0ab73590d45449a77c17ff2 (patch)
tree1a567cb7fac9ff856e3fd4f01584b3bc18816f09 /src/pulsecore/source-output.c
parentd80fd10a67e2764d301e8ff41cc271c0eee2399f (diff)
Increase ref counter of sink input as long as it is included in the sink idxset
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1542 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/pulsecore/source-output.c')
-rw-r--r--src/pulsecore/source-output.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/pulsecore/source-output.c b/src/pulsecore/source-output.c
index defb7797..ee76a6e0 100644
--- a/src/pulsecore/source-output.c
+++ b/src/pulsecore/source-output.c
@@ -157,7 +157,7 @@ pa_source_output* pa_source_output_new(
o->thread_info.resampler = resampler;
pa_assert_se(pa_idxset_put(core->source_outputs, o, &o->index) == 0);
- pa_assert_se( pa_idxset_put(o->source->outputs, o, NULL) == 0);
+ pa_assert_se(pa_idxset_put(o->source->outputs, pa_source_output_ref(o), NULL) == 0);
pa_log_info("Created output %u \"%s\" on %s with sample spec %s",
o->index,
@@ -191,6 +191,7 @@ void pa_source_output_disconnect(pa_source_output*o) {
pa_idxset_remove_by_data(o->source->core->source_outputs, o, NULL);
pa_idxset_remove_by_data(o->source->outputs, o, NULL);
+ pa_source_output_unref(o);
pa_subscription_post(o->source->core, PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT|PA_SUBSCRIPTION_EVENT_REMOVE, o->index);