| 824 | |
| 825 | |
| 826 | void free_cc_call(struct cc_data * data, struct cc_call *call) |
| 827 | { |
| 828 | lock_get( data->lock ); |
| 829 | |
| 830 | cc_list_remove_call( data, call ); |
| 831 | |
| 832 | lock_release( data->lock ); |
| 833 | |
| 834 | LM_DBG("free call %p, [%.*s]\n", call, call->b2bua_id.len, call->b2bua_id.s); |
| 835 | if (call->flow) |
| 836 | call->flow->ref_cnt--; |
| 837 | |
| 838 | if(call->b2bua_id.s) |
| 839 | shm_free(call->b2bua_id.s); |
| 840 | |
| 841 | if (call->b2bua_agent_id.s) |
| 842 | shm_free(call->b2bua_agent_id.s); |
| 843 | |
| 844 | shm_free(call); |
| 845 | } |
| 846 | |
| 847 | |
| 848 | struct cc_agent* get_free_agent_by_skill(struct cc_data *data, |
no test coverage detected