echo-cancel: fix the obviously-wrong "buffer+=buffer" logic

Same bug as in module-loopback, pointed out by Georg Chini in a private
email.

Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
This commit is contained in:
Alexander E. Patrakov 2015-02-22 16:39:14 +05:00 committed by Arun Raghavan
parent 72aac3ff08
commit 7c223a6565

View file

@ -315,7 +315,7 @@ static int64_t calc_diff(struct userdata *u, struct snapshot *snapshot) {
if (recv_counter <= send_counter) if (recv_counter <= send_counter)
buffer_latency += (int64_t) (send_counter - recv_counter); buffer_latency += (int64_t) (send_counter - recv_counter);
else else
buffer_latency += PA_CLIP_SUB(buffer_latency, (int64_t) (recv_counter - send_counter)); buffer_latency = PA_CLIP_SUB(buffer_latency, (int64_t) (recv_counter - send_counter));
/* capture and playback are perfectly aligned when diff_time is 0 */ /* capture and playback are perfectly aligned when diff_time is 0 */
diff_time = (snapshot->sink_now + snapshot->sink_latency - buffer_latency) - diff_time = (snapshot->sink_now + snapshot->sink_latency - buffer_latency) -