summaryrefslogtreecommitdiffstats
path: root/src/virt-viewer-session.c
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@gmail.com>2012-07-09 01:03:14 +0200
committerMarc-André Lureau <marcandre.lureau@gmail.com>2012-07-23 16:27:32 +0200
commit90b67222d16f3e34c4b22e02fba0d9fa63d71a35 (patch)
treee0fa0659b581e15af6b6569e6e4b400fe28efed6 /src/virt-viewer-session.c
parent2a085766f1f8b39103afb7e337da5a611436c177 (diff)
downloadvirt-viewer-90b67222d16f3e34c4b22e02fba0d9fa63d71a35.tar.gz
virt-viewer-90b67222d16f3e34c4b22e02fba0d9fa63d71a35.tar.xz
virt-viewer-90b67222d16f3e34c4b22e02fba0d9fa63d71a35.zip
Prevent from adding the same display several time in the session
In virt_viewer_session_spice_display_monitors(), we (re)add the display unconditionnaly every time we receive a new MonitorConfig.
Diffstat (limited to 'src/virt-viewer-session.c')
-rw-r--r--src/virt-viewer-session.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/virt-viewer-session.c b/src/virt-viewer-session.c
index 18b6922..9249a1f 100644
--- a/src/virt-viewer-session.c
+++ b/src/virt-viewer-session.c
@@ -282,6 +282,9 @@ virt_viewer_session_new(void)
void virt_viewer_session_add_display(VirtViewerSession *session,
VirtViewerDisplay *display)
{
+ if (g_list_find(session->priv->displays, display))
+ return;
+
session->priv->displays = g_list_append(session->priv->displays, display);
g_object_ref(display);
g_signal_emit_by_name(session, "session-display-added", display);