[empathy] CameraMenu: don't change the device if it's the current one



commit 376c8299f4c69345fd783b20a8f2f4d8827551bb
Author: Emilio Pozuelo Monfort <emilio pozuelo collabora co uk>
Date:   Fri Aug 19 13:01:59 2011 +0100

    CameraMenu: don't change the device if it's the current one
    
    https://bugzilla.gnome.org/show_bug.cgi?id=656885

 src/empathy-camera-menu.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/src/empathy-camera-menu.c b/src/empathy-camera-menu.c
index a572538..cee11d7 100644
--- a/src/empathy-camera-menu.c
+++ b/src/empathy-camera-menu.c
@@ -132,6 +132,7 @@ empathy_camera_menu_activate_cb (GtkAction *action,
 {
   EmpathyGstVideoSrc *video;
   const gchar *device;
+  gchar *current_device;
 
   if (self->priv->in_update)
     return;
@@ -139,10 +140,18 @@ empathy_camera_menu_activate_cb (GtkAction *action,
   video = empathy_call_window_get_video_src (self->priv->window);
 
   device = gtk_action_get_name (action);
+  current_device = empathy_video_src_dup_device (video);
+
+  /* Don't change the device if it's the currently used one */
+  if (!tp_strdiff (device, current_device))
+    goto out;
 
   empathy_call_window_play_camera (self->priv->window, FALSE);
   empathy_video_src_change_device (video, device);
   empathy_call_window_play_camera (self->priv->window, TRUE);
+
+ out:
+  g_free (current_device);
 }
 
 static void



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]