File vino-error-on-wayland.patch of Package vino
From d5b743b11a6f102353af719fa34abd5e6c679e77 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");
From c5e3011b7364729fa2cd4f11761bf1f001a931a4 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Tue, 22 May 2018 20:45:45 +0200
Subject: [PATCH] Do not restart service after unclean exit code
Currently, the vino-server.service has Restart=on-failure, which means
that it is restarted in abnormal cases, but also in case of non-zero
exit code. It is restarted 5 times e.g. in case when X11 is not detected,
which doesn't make sense. Non-zero exit code is used only for states
which won't change with restart (invalid commandline, wayland and some
sanity checks). Change the value to Restart=on-abnormal in order to
prevent the useless restarts and to not spam journal.
https://bugzilla.gnome.org/show_bug.cgi?id=761120
---
server/vino-server.service.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/server/vino-server.service.in b/server/vino-server.service.in
index a48b813..49e9c1f 100644
--- a/server/vino-server.service.in
+++ b/server/vino-server.service.in
@@ -5,4 +5,4 @@ Description=Vino VNC server
Type=dbus
BusName=org.gnome.Vino
ExecStart=@libexecdir@/vino-server
-Restart=on-failure
+Restart=on-abnormal
--
2.18.0