]> code.delx.au - pulseaudio/commitdiff
combine-sink: fix segfault
authorDaniel Albers <daniel@lbe.rs>
Thu, 16 Jan 2014 09:00:42 +0000 (10:00 +0100)
committerTanu Kaskinen <tanu.kaskinen@linux.intel.com>
Fri, 17 Jan 2014 10:21:39 +0000 (12:21 +0200)
src/modules/module-combine-sink.c

index 9b71cfbc83cf4f4ee9504e7c0bf3a9bf5f6b5c94..deabcebbd43959ca586de955d75f70007c406f5b 100644 (file)
@@ -216,11 +216,13 @@ static void adjust_rates(struct userdata *u) {
 
     PA_IDXSET_FOREACH(o, u->outputs, idx) {
         uint32_t new_rate = base_rate;
-        uint32_t current_rate = o->sink_input->sample_spec.rate;
+        uint32_t current_rate;
 
         if (!o->sink_input || !PA_SINK_IS_OPENED(pa_sink_get_state(o->sink)))
             continue;
 
+        current_rate = o->sink_input->sample_spec.rate;
+
         if (o->total_latency != target_latency)
             new_rate += (uint32_t) (((double) o->total_latency - (double) target_latency) / (double) u->adjust_time * (double) new_rate);