소스 검색

acc_json: update to free cdr core attrs

Daniel-Constantin Mierla 3 년 전
부모
커밋
f7b35f05f3
1개의 변경된 파일4개의 추가작업 그리고 5개의 파일을 삭제
  1. 4 5
      src/modules/acc_json/acc_json_mod.c

+ 4 - 5
src/modules/acc_json/acc_json_mod.c

@@ -452,14 +452,13 @@ int cdr_json_write(struct dlg_cell *dlg, struct sip_msg *req, cdr_info_t *inf)
 				inf->tarr + attr_cnt);
 		attr_cnt += extra_cnt;
 	} else if (cdr_expired_dlg_enable){
-		int dlg_index = 0;
-		dlg_index += accb.get_extra_dlg_attrs( cdr_extra,
+		extra_cnt += accb.get_extra_dlg_attrs( cdr_extra,
 				dlg,
 				inf->varr + attr_cnt,
 				inf->iarr + attr_cnt,
 				inf->tarr + attr_cnt,
 				&dlgb);
-		attr_cnt += dlg_index;
+		attr_cnt += extra_cnt;
 	}
 
 	struct acc_extra *extra = cdr_extra;
@@ -516,7 +515,7 @@ int cdr_json_write(struct dlg_cell *dlg, struct sip_msg *req, cdr_info_t *inf)
 		json_object_clear(object);
 		json_decref(object);
 	}
-	/* free memory allocated by get_extra_attrs */
-	free_strar_mem(&(inf->tarr[core_cnt]), &(inf->varr[core_cnt]), extra_cnt, attr_cnt);
+	/* free memory allocated by cdr core+extra attrs */
+	free_strar_mem(&(inf->tarr[0]), &(inf->varr[0]), attr_cnt, attr_cnt);
 	return 1;
 }