summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2008-05-03 01:33:33 +0000
committerLennart Poettering <lennart@poettering.net>2008-05-03 01:33:33 +0000
commit3167e0f999f0215e27f769ad76869d0950f0a4e5 (patch)
treee10fcfd812c3a174f77ca524ea4d811a4cf7798f
parentd2da344fee54f759501952685102f5606d3e2aaa (diff)
follow _unlink() changes from sink-input
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2355 fefdeb5f-60dc-0310-8127-8f9354f1896f
-rw-r--r--src/pulsecore/source-output.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/pulsecore/source-output.c b/src/pulsecore/source-output.c
index 7f5f374e..836e30ed 100644
--- a/src/pulsecore/source-output.c
+++ b/src/pulsecore/source-output.c
@@ -273,12 +273,12 @@ void pa_source_output_unlink(pa_source_output*o) {
if (pa_idxset_remove_by_data(o->source->outputs, o, NULL))
pa_source_output_unref(o);
- if (linked) {
- pa_asyncmsgq_send(o->source->asyncmsgq, PA_MSGOBJECT(o->source), PA_SOURCE_MESSAGE_REMOVE_OUTPUT, o, 0, NULL);
- source_output_set_state(o, PA_SOURCE_OUTPUT_UNLINKED);
- pa_source_update_status(o->source);
- } else
- o->state = PA_SOURCE_OUTPUT_UNLINKED;
+ update_n_corked(o, PA_SOURCE_OUTPUT_UNLINKED);
+ o->state = PA_SOURCE_OUTPUT_UNLINKED;
+
+ if (linked)
+ if (o->source->asyncmsgq)
+ pa_asyncmsgq_send(o->source->asyncmsgq, PA_MSGOBJECT(o->source), PA_SOURCE_MESSAGE_REMOVE_OUTPUT, o, 0, NULL);
reset_callbacks(o);