[virt-tools-list] [virt-viewer] ovirt: Fix initial connection
Christophe Fergeau
cfergeau at redhat.com
Thu Dec 6 12:41:08 UTC 2018
After commit df42f78d46 "remote-viewer: factor our
remote_viewer_initial_connect()", the initial connection code only gets
run in the !ovirt case. When ovirt is in use, the initial connection
never happens, meaning all we get when using ovirt:// is a blank
virt-viewer window.
This commit fixes that by moving creation of the ovirt session to
remote_viewer_initial_connect, and unconditionnally calling the
remote_viewer_initial_connect rather than only doing it in the !ovirt
case.
https://bugzilla.redhat.com/show_bug.cgi?id=1655537
Signed-off-by: Christophe Fergeau <cfergeau at redhat.com>
---
src/remote-viewer.c | 29 ++++++++++++++---------------
1 file changed, 14 insertions(+), 15 deletions(-)
diff --git a/src/remote-viewer.c b/src/remote-viewer.c
index 4e1021b..989466b 100644
--- a/src/remote-viewer.c
+++ b/src/remote-viewer.c
@@ -684,9 +684,18 @@ remote_viewer_initial_connect(RemoteViewer *self, const gchar *type, const gchar
{
VirtViewerApp *app = VIRT_VIEWER_APP(self);
- if (!virt_viewer_app_create_session(app, type, error))
- return FALSE;
-
+#ifdef HAVE_OVIRT
+ if (g_strcmp0(type, "ovirt") == 0) {
+ if (!create_ovirt_session(app, guri, error)) {
+ g_prefix_error(error, _("Couldn't open oVirt session: "));
+ return FALSE;
+ }
+ } else
+#endif
+ {
+ if (!virt_viewer_app_create_session(app, type, error))
+ return FALSE;
+ }
g_signal_connect(virt_viewer_app_get_session(app), "session-connected",
G_CALLBACK(remote_viewer_session_connected), g_strdup(guri));
@@ -782,18 +791,8 @@ retry_dialog:
_("Cannot determine the connection type from URI"));
goto cleanup;
}
-#ifdef HAVE_OVIRT
- if (g_strcmp0(type, "ovirt") == 0) {
- if (!create_ovirt_session(app, guri, &error)) {
- g_prefix_error(&error, _("Couldn't open oVirt session: "));
- goto cleanup;
- }
- } else
-#endif
- {
- if (!remote_viewer_initial_connect(self, type, guri, vvfile, &error))
- goto cleanup;
- }
+ if (!remote_viewer_initial_connect(self, type, guri, vvfile, &error))
+ goto cleanup;
}
ret = VIRT_VIEWER_APP_CLASS(remote_viewer_parent_class)->start(app, &error);
--
2.19.2
More information about the virt-tools-list
mailing list