From a9e9e15c3aff72c777c53c111b3a30922a7d02c1 Mon Sep 17 00:00:00 2001
From: Naveen Albert <asterisk@phreaknet.org>
Date: Tue, 11 Jan 2022 18:46:08 +0000
Subject: [PATCH] res_rtp_asterisk: Fix typo in flag test/set

The code currently checks to see if an RFC3389
warning flag is set, except if it is, it merely
sets the flag again, the logic of which doesn't
make any sense.

This adjusts the if comparison to check if the
flag has NOT been set, and if so, emit a notice
log event and set the flag so that future frames
do not cause an event to be logged.

ASTERISK-29856 #close

Change-Id: Ib7098c947c63537d087a03b4646199fbb963f8e1
---
 res/res_rtp_asterisk.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c
index 5fdcefe92b..7024081929 100644
--- a/res/res_rtp_asterisk.c
+++ b/res/res_rtp_asterisk.c
@@ -5757,7 +5757,7 @@ static struct ast_frame *process_cn_rfc3389(struct ast_rtp_instance *instance, u
 			ast_format_get_name(rtp->lastrxformat), len);
 	}
 
-	if (ast_test_flag(rtp, FLAG_3389_WARNING)) {
+	if (!ast_test_flag(rtp, FLAG_3389_WARNING)) {
 		struct ast_sockaddr remote_address = { {0,} };
 
 		ast_rtp_instance_get_remote_address(instance, &remote_address);
-- 
GitLab