From f1c72347e9a9372649379b95397f27c89972c5cf Mon Sep 17 00:00:00 2001 From: Naveen Albert Date: Thu, 14 Nov 2024 09:15:45 -0500 Subject: [PATCH] sig_analog: Fix regression with FGD and E911 signaling. Commit 466eb4a52b69e6dead7ebba13a83f14ef8a559c1 introduced a regression which completely broke Feature Group D and E911 signaling, by removing the call to analog_my_getsigstr, which affected multiple switch cases. Restore the original behavior for all protocols except Feature Group C CAMA (MF), which is all that patch was attempting to target. Resolves: #993 --- channels/sig_analog.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/channels/sig_analog.c b/channels/sig_analog.c index 7ebb06239f..e23cf072c4 100644 --- a/channels/sig_analog.c +++ b/channels/sig_analog.c @@ -1890,6 +1890,11 @@ static void *__analog_ss_thread(void *data) if (p->sig == ANALOG_SIG_E911) { analog_off_hook(p); } + if (p->sig != ANALOG_SIG_FGC_CAMAMF) { + /* CAMA signaling (CAMA and CAMAMF) are handled in an if block below. + * Everything else, process here. */ + res = analog_my_getsigstr(chan, dtmfbuf + strlen(dtmfbuf), "#", 3000); + } } if (res < 1) { analog_dsp_reset_and_flush_digits(p);