From dd74ea175c2a4f004c083ffe9875dc9a9a3cc0a5 Mon Sep 17 00:00:00 2001 From: Bogdan-Andrei Iancu Date: Wed, 17 Aug 2022 13:01:07 +0300 Subject: [PATCH] [call_center] avoid a negative setup_time in CDR In the DB schema, the setup_time is an unsigned, and a -1 value was computed while a call was rejected by an agent (cherry picked from commit 9dc28a91c68db792f1df4cf1d6ce8d0faf83ad0e) --- modules/call_center/call_center.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/call_center/call_center.c b/modules/call_center/call_center.c index 27190978be3..c78f109fede 100644 --- a/modules/call_center/call_center.c +++ b/modules/call_center/call_center.c @@ -534,8 +534,8 @@ static void terminate_call(struct cc_call *call, b2bl_dlg_stat_t* stat, lock_release( data->lock ); - if (call->setup_time==-1 && stat) - call->setup_time = stat->setup_time; + if (call->setup_time==-1) + call->setup_time = stat ? stat->setup_time : 0; /* generate CDR */ type = (stat==NULL) ? -1 : ((prev_state==CC_CALL_TOAGENT && stat->call_time)? 0 : 1);