static void mid_ext_data_destroy (MidExtData * data) { kms_sdp_agent_common_unref_sdp_handler (data->handler); g_free (data->mid); g_slice_free (MidExtData, data); }
static gboolean kms_sdp_base_group_remove_media_handler_impl (KmsSdpBaseGroup * grp, KmsSdpHandler * handler, GError ** error) { if (g_slist_find (grp->priv->handlers, handler) == NULL) { g_set_error (error, KMS_SDP_BASE_GROUP_ERROR, SDP_BASE_GROUP_HANDLER_NOT_FOUND, "Media handler with id '%u' not found", handler->id); return FALSE; } grp->priv->handlers = g_slist_remove (grp->priv->handlers, handler); kms_sdp_agent_common_unref_sdp_handler (handler); /* TODO: Remove this group from handler->groups in new API */ return TRUE; }