diff libpurple/media.c @ 26140:ac56e5707a72

Added purple_media_end and removed the purple_media_got_hangup.
author Mike Ruprecht <maiku@soc.pidgin.im>
date Tue, 27 Jan 2009 07:48:03 +0000
parents 128a3175668e
children 1ff5304f6e9d
line wrap: on
line diff
--- a/libpurple/media.c	Sat Jan 24 12:01:34 2009 +0000
+++ b/libpurple/media.c	Tue Jan 27 07:48:03 2009 +0000
@@ -1238,9 +1238,7 @@
 	g_signal_emit(media, purple_media_signals[STATE_CHANGED],
 			0, PURPLE_MEDIA_STATE_CHANGED_HANGUP,
 			NULL, NULL);
-	g_signal_emit(media, purple_media_signals[STATE_CHANGED],
-			0, PURPLE_MEDIA_STATE_CHANGED_END,
-			NULL, NULL);
+	purple_media_end(media, NULL, NULL);
 }
 
 void
@@ -1249,17 +1247,17 @@
 	g_signal_emit(media, purple_media_signals[STATE_CHANGED],
 			0, PURPLE_MEDIA_STATE_CHANGED_REJECTED,
 			NULL, NULL);
-	g_signal_emit(media, purple_media_signals[STATE_CHANGED],
-			0, PURPLE_MEDIA_STATE_CHANGED_END,
-			NULL, NULL);
+	purple_media_end(media, NULL, NULL);
 }
 
 void
-purple_media_got_hangup(PurpleMedia *media)
+purple_media_end(PurpleMedia *media,
+		const gchar *session_id, const gchar *participant)
 {
-	g_signal_emit(media, purple_media_signals[STATE_CHANGED],
-			0, PURPLE_MEDIA_STATE_CHANGED_END,
-			NULL, NULL);
+	if (session_id == NULL && participant == NULL)
+		g_signal_emit(media, purple_media_signals[STATE_CHANGED],
+				0, PURPLE_MEDIA_STATE_CHANGED_END,
+				NULL, NULL);
 }
 
 GList*