|
|
|
|
@ -2639,8 +2639,11 @@ static void __call_monologue_init_from_flags(struct call_monologue *ml, struct c
|
|
|
|
|
|
|
|
|
|
// consume session attributes
|
|
|
|
|
t_queue_clear_full(&ml->generic_attributes, sdp_attr_free);
|
|
|
|
|
t_queue_clear_full(&ml->all_attributes, sdp_attr_free);
|
|
|
|
|
ml->generic_attributes = flags->generic_attributes;
|
|
|
|
|
t_queue_init(&flags->generic_attributes);
|
|
|
|
|
ml->all_attributes = flags->all_attributes;
|
|
|
|
|
t_queue_init(&flags->all_attributes);
|
|
|
|
|
|
|
|
|
|
/* consume sdp session parts */
|
|
|
|
|
{
|
|
|
|
|
@ -2855,8 +2858,11 @@ static void __media_init_from_flags(struct call_media *other_media, struct call_
|
|
|
|
|
* other (unknown type)
|
|
|
|
|
*/
|
|
|
|
|
t_queue_clear_full(&other_media->generic_attributes, sdp_attr_free);
|
|
|
|
|
t_queue_clear_full(&other_media->all_attributes, sdp_attr_free);
|
|
|
|
|
other_media->generic_attributes = sp->generic_attributes;
|
|
|
|
|
t_queue_init(&sp->generic_attributes);
|
|
|
|
|
other_media->all_attributes = sp->all_attributes;
|
|
|
|
|
t_queue_init(&sp->all_attributes);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// codec and RTP payload types handling
|
|
|
|
|
@ -4014,6 +4020,7 @@ void call_media_free(struct call_media **mdp) {
|
|
|
|
|
codec_handler_free(&md->t38_handler);
|
|
|
|
|
t38_gateway_put(&md->t38_gateway);
|
|
|
|
|
t_queue_clear_full(&md->generic_attributes, sdp_attr_free);
|
|
|
|
|
t_queue_clear_full(&md->all_attributes, sdp_attr_free);
|
|
|
|
|
t_queue_clear_full(&md->dtmf_recv, dtmf_event_free);
|
|
|
|
|
t_queue_clear_full(&md->dtmf_send, dtmf_event_free);
|
|
|
|
|
t_hash_table_destroy(md->media_subscribers_ht);
|
|
|
|
|
@ -4039,6 +4046,7 @@ void __monologue_free(struct call_monologue *m) {
|
|
|
|
|
sdp_orig_free(m->session_last_sdp_orig);
|
|
|
|
|
sdp_sessions_clear(&m->last_in_sdp_parsed);
|
|
|
|
|
t_queue_clear_full(&m->generic_attributes, sdp_attr_free);
|
|
|
|
|
t_queue_clear_full(&m->all_attributes, sdp_attr_free);
|
|
|
|
|
sdp_streams_clear(&m->last_in_sdp_streams);
|
|
|
|
|
g_slice_free1(sizeof(*m), m);
|
|
|
|
|
}
|
|
|
|
|
|