summaryrefslogtreecommitdiffstats
path: root/ext/pulse
diff options
context:
space:
mode:
authorJan Schmidt <thaytan@noraisin.net>2009-05-15 10:42:19 +0100
committerJan Schmidt <thaytan@noraisin.net>2009-05-21 21:16:14 +0100
commitcf584105c6d3cdf5effc6a8a7acc749e72d026ff (patch)
tree54cb865492fab990b1eb2f6ad272d064a7c1ea18 /ext/pulse
parentca25de8f774917a498df26a3811457a8440bc4b1 (diff)
pulsesink: Convert an erroneous assertion
Occasionally, we get a change callback for an old stream, triggering the assertion unnecessarily. Just ignore such callbacks.
Diffstat (limited to 'ext/pulse')
-rw-r--r--ext/pulse/pulsesink.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/ext/pulse/pulsesink.c b/ext/pulse/pulsesink.c
index 0275d342..9743662f 100644
--- a/ext/pulse/pulsesink.c
+++ b/ext/pulse/pulsesink.c
@@ -1516,9 +1516,11 @@ gst_pulsesink_sink_input_info_cb (pa_context * c, const pa_sink_input_info * i,
if (!pbuf->stream)
goto done;
- g_assert (i->index == pa_stream_get_index (pbuf->stream));
-
- psink->volume = pa_sw_volume_to_linear (pa_cvolume_max (&i->volume));
+ /* If the index doesn't match our current stream,
+ * it implies we just recreated the stream (caps change)
+ */
+ if (i->index == pa_stream_get_index (pbuf->stream))
+ psink->volume = pa_sw_volume_to_linear (pa_cvolume_max (&i->volume));
done:
pa_threaded_mainloop_signal (psink->mainloop, 0);