|
|
140d58 |
From 8ebff59a59bc89c4533240348d7c231d9a07f886 Mon Sep 17 00:00:00 2001
|
|
|
140d58 |
From: Pavel Grunt <pgrunt@redhat.com>
|
|
|
140d58 |
Date: Thu, 18 May 2017 11:59:18 +0200
|
|
|
140d58 |
Subject: [PATCH virt-viewer 33/35] virt-viewer: Ensure to not close during
|
|
|
140d58 |
migration
|
|
|
140d58 |
To: virt-tools-list@redhat.com
|
|
|
140d58 |
|
|
|
140d58 |
Take a look at the shutdown event detail before killing
|
|
|
140d58 |
the connection. Otherwise it breaks the SPICE seamless migration
|
|
|
140d58 |
feature.
|
|
|
140d58 |
|
|
|
140d58 |
Regression since commit a62827d28c6b69e90102e4c1c8043cbddad8929a
|
|
|
140d58 |
|
|
|
140d58 |
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1442929
|
|
|
140d58 |
Signed-off-by: Pavel Grunt <pgrunt@redhat.com>
|
|
|
140d58 |
Acked-by: Daniel P. Berrange <berrange@redhat.com>
|
|
|
140d58 |
(cherry picked from commit 209c80375b152dc02f903a3ac72272872b4e5270)
|
|
|
140d58 |
---
|
|
|
140d58 |
src/virt-viewer.c | 11 +++++++++++
|
|
|
140d58 |
1 file changed, 11 insertions(+)
|
|
|
140d58 |
|
|
|
140d58 |
diff --git a/src/virt-viewer.c b/src/virt-viewer.c
|
|
|
140d58 |
index fe10229..875f86e 100644
|
|
|
140d58 |
--- a/src/virt-viewer.c
|
|
|
140d58 |
+++ b/src/virt-viewer.c
|
|
|
140d58 |
@@ -52,6 +52,10 @@
|
|
|
140d58 |
#include "virt-viewer-auth.h"
|
|
|
140d58 |
#include "virt-viewer-util.h"
|
|
|
140d58 |
|
|
|
140d58 |
+#ifdef HAVE_SPICE_GTK
|
|
|
140d58 |
+#include "virt-viewer-session-spice.h"
|
|
|
140d58 |
+#endif
|
|
|
140d58 |
+
|
|
|
140d58 |
struct _VirtViewerPrivate {
|
|
|
140d58 |
char *uri;
|
|
|
140d58 |
virConnectPtr conn;
|
|
|
140d58 |
@@ -737,6 +741,13 @@ virt_viewer_domain_event(virConnectPtr conn G_GNUC_UNUSED,
|
|
|
140d58 |
switch (event) {
|
|
|
140d58 |
case VIR_DOMAIN_EVENT_STOPPED:
|
|
|
140d58 |
session = virt_viewer_app_get_session(app);
|
|
|
140d58 |
+#ifdef HAVE_SPICE_GTK
|
|
|
140d58 |
+ /* do not disconnect due to migration */
|
|
|
140d58 |
+ if (detail == VIR_DOMAIN_EVENT_STOPPED_MIGRATED &&
|
|
|
140d58 |
+ VIRT_VIEWER_IS_SESSION_SPICE(session)) {
|
|
|
140d58 |
+ break;
|
|
|
140d58 |
+ }
|
|
|
140d58 |
+#endif
|
|
|
140d58 |
if (session != NULL)
|
|
|
140d58 |
virt_viewer_session_close(session);
|
|
|
140d58 |
break;
|
|
|
140d58 |
--
|
|
|
140d58 |
2.13.0
|
|
|
140d58 |
|