Merge with bookmark 'vv-crash'. meson

Wed, 07 Sep 2016 00:41:30 -0400

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Wed, 07 Sep 2016 00:41:30 -0400
branch
meson
changeset 38474
ead8ae086fc9
parent 38473
919d72c1c8c0 (current diff)
parent 38027
bd088b2700cd (diff)
child 38475
1ab806a5afba

Merge with bookmark 'vv-crash'.

--- a/finch/gntmedia.c	Thu Sep 01 19:19:38 2016 -0400
+++ b/finch/gntmedia.c	Wed Sep 07 00:41:30 2016 -0400
@@ -414,13 +414,14 @@
 {
 #ifdef USE_VV
 	PurpleMediaManager *manager = purple_media_manager_get();
-	PurpleMediaElementInfo *audio_src;
-	PurpleMediaElementInfo *audio_sink;
+	PurpleMediaElementInfo *audio_src = NULL;
+	PurpleMediaElementInfo *audio_sink = NULL;
 	const char *pref;
 
 	pref = purple_prefs_get_string(
 			FINCH_PREFS_ROOT "/vvconfig/audio/src/device");
-	audio_src = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_src = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_src) {
 		pref = "autoaudiosrc";
 		purple_prefs_set_string(
@@ -431,7 +432,8 @@
 
 	pref = purple_prefs_get_string(
 			FINCH_PREFS_ROOT "/vvconfig/audio/sink/device");
-	audio_sink = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_sink = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_sink) {
 		pref = "autoaudiosink";
 		purple_prefs_set_string(
--- a/libpurple/mediamanager.c	Thu Sep 01 19:19:38 2016 -0400
+++ b/libpurple/mediamanager.c	Wed Sep 07 00:41:30 2016 -0400
@@ -1229,6 +1229,7 @@
 	GList *iter;
 
 	g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL);
+	g_return_val_if_fail(id != NULL, NULL);
 
 	iter = manager->priv->elements;
 
--- a/pidgin/gtkmedia.c	Thu Sep 01 19:19:38 2016 -0400
+++ b/pidgin/gtkmedia.c	Wed Sep 07 00:41:30 2016 -0400
@@ -1201,15 +1201,16 @@
 {
 #ifdef USE_VV
 	PurpleMediaManager *manager = purple_media_manager_get();
-	PurpleMediaElementInfo *video_src;
-	PurpleMediaElementInfo *video_sink;
-	PurpleMediaElementInfo *audio_src;
-	PurpleMediaElementInfo *audio_sink;
+	PurpleMediaElementInfo *video_src = NULL;
+	PurpleMediaElementInfo *video_sink = NULL;
+	PurpleMediaElementInfo *audio_src = NULL;
+	PurpleMediaElementInfo *audio_sink = NULL;
 	const char *pref;
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/video/src/device");
-	video_src = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		video_src = purple_media_manager_get_element_info(manager, pref);
 	if (!video_src) {
 		pref = "autovideosrc";
 		purple_prefs_set_string(
@@ -1220,7 +1221,8 @@
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/video/sink/device");
-	video_sink = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		video_sink = purple_media_manager_get_element_info(manager, pref);
 	if (!video_sink) {
 		pref = "autovideosink";
 		purple_prefs_set_string(
@@ -1231,7 +1233,8 @@
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/audio/src/device");
-	audio_src = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_src = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_src) {
 		pref = "autoaudiosrc";
 		purple_prefs_set_string(
@@ -1242,7 +1245,8 @@
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/audio/sink/device");
-	audio_sink = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_sink = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_sink) {
 		pref = "autoaudiosink";
 		purple_prefs_set_string(

mercurial