diff options
Diffstat (limited to 'src/modules/module-tunnel.c')
-rw-r--r-- | src/modules/module-tunnel.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/modules/module-tunnel.c b/src/modules/module-tunnel.c index c6b0a2cb..7b6b1b82 100644 --- a/src/modules/module-tunnel.c +++ b/src/modules/module-tunnel.c @@ -230,6 +230,9 @@ static void stream_cork(struct userdata *u, pa_bool_t cork) { else pa_smoother_resume(u->smoother, pa_rtclock_usec()); + if (!u->pstream) + return; + t = pa_tagstruct_new(NULL, 0); #ifdef TUNNEL_SINK pa_tagstruct_putu32(t, PA_COMMAND_CORK_PLAYBACK_STREAM); @@ -811,7 +814,7 @@ static void setup_complete_callback(pa_pdispatch *pd, uint32_t command, uint32_t pa_tagstruct_putu32(reply, PA_INVALID_INDEX); pa_tagstruct_puts(reply, u->sink_name); pa_tagstruct_putu32(reply, u->maxlength); - pa_tagstruct_put_boolean(reply, FALSE); + pa_tagstruct_put_boolean(reply, !PA_SINK_OPENED(pa_sink_get_state(u->sink))); pa_tagstruct_putu32(reply, u->tlength); pa_tagstruct_putu32(reply, u->prebuf); pa_tagstruct_putu32(reply, u->minreq); @@ -827,7 +830,7 @@ static void setup_complete_callback(pa_pdispatch *pd, uint32_t command, uint32_t pa_tagstruct_putu32(reply, PA_INVALID_INDEX); pa_tagstruct_puts(reply, u->source_name); pa_tagstruct_putu32(reply, u->maxlength); - pa_tagstruct_put_boolean(reply, 0); + pa_tagstruct_put_boolean(reply, !PA_SOURCE_OPENED(pa_source_get_state(u->source))); pa_tagstruct_putu32(reply, u->fragsize); #endif |