From c5f71a45c7c55af0cf4a6aa482d8a57018af7900 Mon Sep 17 00:00:00 2001 From: Daniel-Constantin Mierla Date: Sun, 18 Sep 2022 21:33:25 +0200 Subject: [PATCH] acc: more meaningful array index names for building cdr attributes --- src/modules/acc/acc_cdr.c | 44 +++++++++++++++++++++------------------ 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/src/modules/acc/acc_cdr.c b/src/modules/acc/acc_cdr.c index d3009c85383..8c51881dd79 100644 --- a/src/modules/acc/acc_cdr.c +++ b/src/modules/acc/acc_cdr.c @@ -130,8 +130,9 @@ static db_val_t *db_cdr_vals = NULL; static int db_write_cdr( struct dlg_cell* dialog, struct sip_msg* message) { - int m = 0; - int n = 0; + int attr_cnt = 0; + int core_cnt = 0; + int extra_cnt = 0; int i; db_func_t *df=NULL; db1_con_t *dh=NULL; @@ -155,12 +156,13 @@ static int db_write_cdr( struct dlg_cell* dialog, dh = (db1_con_t*)vh; /* get default values */ - m = cdr_core2strar( dialog, + core_cnt = cdr_core2strar( dialog, cdr_value_array, cdr_int_array, cdr_type_array); + attr_cnt += core_cnt; - for(i=0; iinsert_delayed!=NULL) { - if (df->insert_delayed(dh, db_cdr_keys, db_cdr_vals, m) < 0) { + if (df->insert_delayed(dh, db_cdr_keys, db_cdr_vals, attr_cnt) < 0) { LM_ERR("failed to insert delayed into database\n"); goto error; } } else if(acc_db_insert_mode==2 && df->insert_async!=NULL) { - if (df->insert_async(dh, db_cdr_keys, db_cdr_vals, m) < 0) { + if (df->insert_async(dh, db_cdr_keys, db_cdr_vals, attr_cnt) < 0) { LM_ERR("failed to insert async into database\n"); goto error; } } else { - if (df->insert(dh, db_cdr_keys, db_cdr_vals, m) < 0) { + if (df->insert(dh, db_cdr_keys, db_cdr_vals, attr_cnt) < 0) { LM_ERR("failed to insert into database\n"); goto error; } } /* Free memory allocated by acc_extra.c/extra2strar */ - free_strar_mem( &(cdr_type_array[m-n]), &(cdr_value_array[m-n]), n, m); + free_strar_mem( &(cdr_type_array[core_cnt]), &(cdr_value_array[core_cnt]), + extra_cnt, attr_cnt); return 0; error: /* Free memory allocated by acc_extra.c/extra2strar */ - free_strar_mem( &(cdr_type_array[m-n]), &(cdr_value_array[m-n]), n, m); + free_strar_mem( &(cdr_type_array[core_cnt]), &(cdr_value_array[core_cnt]), + extra_cnt, attr_cnt); return -1; }