From: Vitezslav Novy Date: Tue, 5 Sep 2023 11:51:26 +0000 (+0200) Subject: res_rtp_asterisk: fix wrong counter management in ioqueue objects X-Git-Tag: 18.21.0-rc1~82 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cb1e146b1862b1723343a883ac47089fcfd89cce;p=thirdparty%2Fasterisk.git res_rtp_asterisk: fix wrong counter management in ioqueue objects In function rtp_ioqueue_thread_remove counter in ioqueue object is not decreased which prevents unused ICE TURN threads from being removed. Resolves: #301 (cherry picked from commit 8cf1db15c238d44d524335b5d0694daa20012b69) --- diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c index 5da249d7de..8bfa2711b8 100644 --- a/res/res_rtp_asterisk.c +++ b/res/res_rtp_asterisk.c @@ -1552,7 +1552,7 @@ static void rtp_ioqueue_thread_remove(struct ast_rtp_ioqueue_thread *ioqueue) /* If nothing is using this ioqueue thread destroy it */ AST_LIST_LOCK(&ioqueues); - if ((ioqueue->count - 2) == 0) { + if ((ioqueue->count -= 2) == 0) { destroy = 1; AST_LIST_REMOVE(&ioqueues, ioqueue, next); }