From 55f48a3bd6cc9d30a27fc6de614888d8177877e2 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Thu, 23 Jan 2025 08:44:37 -0400 Subject: [PATCH] MT#55283 prevent erroneous swithch to DB 0 A call that gets created but then doesn't get initialised would have its Redis DB left at zero. At destruction it would then try to switch to DB zero. Fix this by using an appropriate initial value. Closes #1905 Change-Id: I852e48c5a06b732b37d2ccd5c478de4760aacd4e (cherry picked from commit add46f265a87e6e192a5d5077f1ccdadcd7260e2) --- daemon/call.c | 1 + include/call.h | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/daemon/call.c b/daemon/call.c index 94be70fd8..cf0479b49 100644 --- a/daemon/call.c +++ b/daemon/call.c @@ -4201,6 +4201,7 @@ static call_t *call_create(const str *callid) { c->tos = rtpe_config.default_tos; c->poller = rtpe_get_poller(); c->sdp_fragments = fragments_ht_new(); + c->redis_hosted_db = -1; if (rtpe_config.cpu_affinity) c->cpu_affinity = call_socket_cpu_affinity++ % rtpe_config.cpu_affinity; else diff --git a/include/call.h b/include/call.h index 1ebc4b10c..3aa024db9 100644 --- a/include/call.h +++ b/include/call.h @@ -760,7 +760,7 @@ struct call { sockaddr_t xmlrpc_callback; endpoint_t dtmf_log_dest; - unsigned int redis_hosted_db; + int redis_hosted_db; atomic64 last_redis_update; struct recording *recording;