summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2011-05-23 12:41:12 +0100
committerDaniel P. Berrange <berrange@redhat.com>2011-05-23 12:41:12 +0100
commit6234a2e1f4f904a8ed8f625a7d8fe1705fe5478a (patch)
treec08a8199966b695de56484a18eb976a3c4073f9f
parent6c477650ca3497eb56fa273a421f72d4d8f9aca1 (diff)
downloadvirt-viewer-6234a2e1f4f904a8ed8f625a7d8fe1705fe5478a.tar.gz
virt-viewer-6234a2e1f4f904a8ed8f625a7d8fe1705fe5478a.tar.xz
virt-viewer-6234a2e1f4f904a8ed8f625a7d8fe1705fe5478a.zip
Fix re-connect after authentication failure
viewer->display will be non-NULL if we have already attempted a connection. So, remove the check for it being NULL, and instead skip the widget setup step.
-rw-r--r--src/viewer.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/viewer.c b/src/viewer.c
index edfe28e..1be60ca 100644
--- a/src/viewer.c
+++ b/src/viewer.c
@@ -913,18 +913,18 @@ static int viewer_activate(VirtViewer *viewer,
int fd = -1;
int ret = -1;
- g_return_val_if_fail(viewer->display == NULL, -1);
-
if (viewer->active)
goto cleanup;
- if (!viewer_extract_connect_info(viewer, dom))
- goto cleanup;
+ if (viewer->display == NULL) {
+ if (!viewer_extract_connect_info(viewer, dom))
+ goto cleanup;
- if (viewer->gport)
- viewer->pretty_address = g_strdup_printf("%s:%s", viewer->ghost, viewer->gport);
- else
- viewer->pretty_address = g_strdup_printf("%s:%s", viewer->host, viewer->unixsock);
+ if (viewer->gport)
+ viewer->pretty_address = g_strdup_printf("%s:%s", viewer->ghost, viewer->gport);
+ else
+ viewer->pretty_address = g_strdup_printf("%s:%s", viewer->host, viewer->unixsock);
+ }
#if defined(HAVE_SOCKETPAIR) && defined(HAVE_FORK)
if (viewer->transport &&