summaryrefslogtreecommitdiffstats
path: root/src/virt-viewer-session-spice.c
diff options
context:
space:
mode:
authorFabiano FidĂȘncio <fidencio@redhat.com>2015-04-09 13:31:56 +0200
committerFabiano FidĂȘncio <fidencio@redhat.com>2015-04-22 10:40:29 +0200
commit64e7b604d3449380fc24c9782013dcf3b62eec3e (patch)
treed14a59f7f689ddb5ebc122f2e0bd8528ac07f9b0 /src/virt-viewer-session-spice.c
parentf3fe9ffe7bd56a62e3a78f5974620fb54151918a (diff)
downloadvirt-viewer-64e7b604d3449380fc24c9782013dcf3b62eec3e.tar.gz
virt-viewer-64e7b604d3449380fc24c9782013dcf3b62eec3e.tar.xz
virt-viewer-64e7b604d3449380fc24c9782013dcf3b62eec3e.zip
spice-session: use the error message, when available, on _channel_destroy()
Diffstat (limited to 'src/virt-viewer-session-spice.c')
-rw-r--r--src/virt-viewer-session-spice.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/virt-viewer-session-spice.c b/src/virt-viewer-session-spice.c
index 7bd0a93..d870951 100644
--- a/src/virt-viewer-session-spice.c
+++ b/src/virt-viewer-session-spice.c
@@ -899,12 +899,15 @@ virt_viewer_session_spice_channel_destroy(G_GNUC_UNUSED SpiceSession *s,
{
VirtViewerSessionSpice *self = VIRT_VIEWER_SESSION_SPICE(session);
int id;
+ const GError *error;
g_return_if_fail(self != NULL);
g_object_get(channel, "channel-id", &id, NULL);
g_debug("Destroy SPICE channel %s %d", g_type_name(G_OBJECT_TYPE(channel)), id);
+ error = spice_channel_get_error(channel);
+
if (SPICE_IS_MAIN_CHANNEL(channel)) {
g_debug("zap main channel");
if (channel == SPICE_CHANNEL(self->priv->main_channel))
@@ -930,7 +933,7 @@ virt_viewer_session_spice_channel_destroy(G_GNUC_UNUSED SpiceSession *s,
self->priv->channel_count--;
if (self->priv->channel_count == 0)
- g_signal_emit_by_name(self, "session-disconnected", NULL);
+ g_signal_emit_by_name(self, "session-disconnected", error ? error->message : NULL);
}
#define UUID_LEN 16