summaryrefslogtreecommitdiff
path: root/net-misc/vino/files/vino-return-error-if-X11-is-no-detected.patch
blob: 171d8590e3c9b689f9ed1c52575d723e3a5e43ae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
From 5e49ab2d125388b843eca4f1f47849d18ccabcd3 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Tue, 20 Feb 2018 12:26:18 +0100
Subject: [PATCH] Return error if X11 is not detected

Vino-server crashes on Wayland in XQueryExtension. Since vino-server is
not expected to work on displays other than X11, let's exit immediately
if GDK_IS_X11_DISPLAY fail.

https://bugzilla.gnome.org/show_bug.cgi?id=761120
---
 server/vino-main.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/server/vino-main.c b/server/vino-main.c
index dd95de7..7be3fff 100644
--- a/server/vino-main.c
+++ b/server/vino-main.c
@@ -28,6 +28,7 @@
 #include <glib/gi18n.h>
 #include <gtk/gtk.h>
 #include <locale.h>
+#include <gdk/gdkx.h>
 
 #include "vino-input.h"
 #include "vino-mdns.h"
@@ -273,6 +274,12 @@ main (int argc, char **argv)
     g_option_context_free (context);
   }
 
+  if (!GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
+    {
+      g_printerr ("X11 is not detected\n");
+      return 1;
+    }
+
   /* GSettings */
   vino.settings = g_settings_new ("org.gnome.Vino");
 
-- 
2.16.2