Mercurial > pidgin.yaz
diff libpurple/media/media.c @ 29562:1156bf88b4d3
Store active_remote_candidates in PurpleMedia as a GList of PurpleMediaCandidate's.
author | maiku@pidgin.im |
---|---|
date | Mon, 26 Oct 2009 19:11:29 +0000 |
parents | 7713312c4ab0 |
children | eef5ec04a5bf |
line wrap: on
line diff
--- a/libpurple/media/media.c Mon Oct 26 19:01:30 2009 +0000 +++ b/libpurple/media/media.c Mon Oct 26 19:11:29 2009 +0000 @@ -331,7 +331,8 @@ purple_media_candidate_list_free( stream->active_local_candidates); if (stream->active_remote_candidates) - fs_candidate_list_destroy(stream->active_remote_candidates); + purple_media_candidate_list_free( + stream->active_remote_candidates); g_free(stream); } @@ -1264,14 +1265,14 @@ iter = stream->active_remote_candidates; for(; iter; iter = g_list_next(iter)) { - FsCandidate *c = iter->data; - if (id == c->component_id) { - fs_candidate_destroy(c); + PurpleMediaCandidate *c = iter->data; + if (id == purple_media_candidate_get_component_id(c)) { + g_object_unref(c); stream->active_remote_candidates = g_list_delete_link(iter, iter); stream->active_remote_candidates = g_list_prepend( stream->active_remote_candidates, - purple_media_candidate_to_fs( + purple_media_candidate_copy( remote_candidate)); break; } @@ -1279,7 +1280,7 @@ if (iter == NULL) stream->active_remote_candidates = g_list_prepend( stream->active_remote_candidates, - purple_media_candidate_to_fs( + purple_media_candidate_copy( remote_candidate)); purple_debug_info("media", "candidate pair established\n"); @@ -1733,7 +1734,7 @@ PurpleMediaStream *stream; g_return_val_if_fail(PURPLE_IS_MEDIA(media), NULL); stream = purple_media_get_stream(media, sess_id, participant); - return purple_media_candidate_list_from_fs( + return purple_media_candidate_list_copy( stream->active_remote_candidates); #else return NULL;