From 9cf09f651572a171b0a4f9324ec7ee2c054e4778 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Fri, 25 Jun 2021 17:09:49 -0400 Subject: [PATCH] TT#91151 fix erroneous variable re-use Change-Id: I381f7ba1db7b108f03343454e1e7cc8f0abee08f (cherry picked from commit 77b5e0b6bdb1b88199afeae5d4879d7f49677020) --- daemon/call.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/daemon/call.c b/daemon/call.c index f12feb0ae..03870bf2a 100644 --- a/daemon/call.c +++ b/daemon/call.c @@ -2680,13 +2680,13 @@ void call_destroy(struct call *c) { } k = g_hash_table_get_values(ml->ssrc_hash->ht); - for (l = k; l; l = l->next) { - struct ssrc_entry_call *se = l->data; + while (k) { + struct ssrc_entry_call *se = k->data; // stats output only - no cleanups if (!se->stats_blocks.length || !se->lowest_mos || !se->highest_mos) - continue; + goto next_k; int mos_samples = (se->stats_blocks.length - se->no_mos_count); if (mos_samples < 1) mos_samples = 1; @@ -2705,8 +2705,9 @@ void call_destroy(struct call *c) { (unsigned int) (timeval_diff(&se->highest_mos->reported, &c->created) / 1000000) / 60, (unsigned int) (timeval_diff(&se->highest_mos->reported, &c->created) / 1000000) % 60, se->packets_lost); +next_k: + k = g_list_delete_link(k, k); } - g_list_free(k); }