summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2008-05-02 01:26:10 +0000
committerLennart Poettering <lennart@poettering.net>2008-05-02 01:26:10 +0000
commitbb4f83b901c2c18e8bec5b044b1c624759a0113b (patch)
tree91302cd20cdd7a969d8e299ca9e51f1a11980bd8
parentbfb2691fac92a3a6f44ea309b6969e8ed96b7711 (diff)
only send PA_SINK_MESSAGE_SET_STATE if there's still an asyncmsqg around to do so
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2347 fefdeb5f-60dc-0310-8127-8f9354f1896f
-rw-r--r--src/pulsecore/sink.c5
-rw-r--r--src/pulsecore/source.c5
2 files changed, 6 insertions, 4 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c
index a2a02ebf..6c427e15 100644
--- a/src/pulsecore/sink.c
+++ b/src/pulsecore/sink.c
@@ -272,8 +272,9 @@ static int sink_set_state(pa_sink *s, pa_sink_state_t state) {
if ((ret = s->set_state(s, state)) < 0)
return -1;
- if (pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_SET_STATE, PA_UINT_TO_PTR(state), 0, NULL) < 0)
- return -1;
+ if (s->asyncmsgq)
+ if (pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_SET_STATE, PA_UINT_TO_PTR(state), 0, NULL) < 0)
+ return -1;
s->state = state;
diff --git a/src/pulsecore/source.c b/src/pulsecore/source.c
index 4a2173ca..efd6dab0 100644
--- a/src/pulsecore/source.c
+++ b/src/pulsecore/source.c
@@ -235,8 +235,9 @@ static int source_set_state(pa_source *s, pa_source_state_t state) {
if ((ret = s->set_state(s, state)) < 0)
return -1;
- if (pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_SET_STATE, PA_UINT_TO_PTR(state), 0, NULL) < 0)
- return -1;
+ if (s->asyncmsgq)
+ if (pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_SET_STATE, PA_UINT_TO_PTR(state), 0, NULL) < 0)
+ return -1;
s->state = state;