[PATCH virt-viewer] app: Factor out common code

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

 



---
 src/virt-viewer-app.c | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/src/virt-viewer-app.c b/src/virt-viewer-app.c
index e8412ac..ee3800b 100644
--- a/src/virt-viewer-app.c
+++ b/src/virt-viewer-app.c
@@ -1032,21 +1032,16 @@ virt_viewer_app_create_session(VirtViewerApp *self, const gchar *type, GError **
     VirtViewerAppPrivate *priv = self->priv;
     g_return_val_if_fail(priv->session == NULL, FALSE);
     g_return_val_if_fail(type != NULL, FALSE);
+    VirtViewerSession *(*session_new_f)(VirtViewerApp *, GtkWindow *);
 
 #ifdef HAVE_GTK_VNC
     if (g_ascii_strcasecmp(type, "vnc") == 0) {
-        GtkWindow *window = virt_viewer_window_get_window(priv->main_window);
-        virt_viewer_app_trace(self, "Guest %s has a %s display",
-                              priv->guest_name, type);
-        priv->session = virt_viewer_session_vnc_new(self, window);
+        session_new_f = virt_viewer_session_vnc_new;
     } else
 #endif
 #ifdef HAVE_SPICE_GTK
     if (g_ascii_strcasecmp(type, "spice") == 0) {
-        GtkWindow *window = virt_viewer_window_get_window(priv->main_window);
-        virt_viewer_app_trace(self, "Guest %s has a %s display",
-                              priv->guest_name, type);
-        priv->session = virt_viewer_session_spice_new(self, window);
+        session_new_f = virt_viewer_session_spice_new;
     } else
 #endif
     {
@@ -1059,6 +1054,9 @@ virt_viewer_app_create_session(VirtViewerApp *self, const gchar *type, GError **
         return FALSE;
     }
 
+    virt_viewer_app_trace(self, "Guest %s has a %s display", priv->guest_name, type);
+    priv->session = session_new_f(self, virt_viewer_window_get_window(priv->main_window));
+
     g_signal_connect(priv->session, "session-initialized",
                      G_CALLBACK(virt_viewer_app_initialized), self);
     g_signal_connect(priv->session, "session-connected",
-- 
2.10.0

_______________________________________________
virt-tools-list mailing list
virt-tools-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/virt-tools-list



[Index of Archives]     [Linux Virtualization]     [KVM Development]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]     [Video 4 Linux]

  Powered by Linux