diff --git a/gnome/src/actions.c b/gnome/src/actions.c index b4303f1ae9b7a24e22b42490863c82da3ce36003..26cf76d00735da6c3adddf6cf9c4c226291f4c21 100644 --- a/gnome/src/actions.c +++ b/gnome/src/actions.c @@ -1030,27 +1030,22 @@ void sflphone_toggle_screenshare(void) { static gboolean screenshare = TRUE; - gboolean switched; gchar *resource; if (screenshare) { resource = sflphone_get_display(); - g_debug("enabling screen sharing (with MRL '%s')", resource); - switched = dbus_switch_video_input(resource); } else { - gchar *device; - - device = dbus_get_active_video_device(); - resource = g_strconcat("v4l2://", device, NULL); - g_debug("restoring camera '%s' (with MRL '%s'", device, resource); - switched = dbus_switch_video_input(device); - g_free(device); + gchar *device = dbus_get_active_video_device(); + resource = g_strconcat("v4l2://", device, NULL); + g_free(device); } - if (switched) - screenshare = !screenshare; - else - g_error("failed to switch to resource '%s'\n", resource); + if (dbus_switch_video_input(resource)) { + g_debug("switched video input to '%s'", resource); + screenshare = !screenshare; + } else { + g_error("failed to switch to resource '%s'\n", resource); + } g_free(resource); }