Commit 21cb4b35 authored by eric.le.bihan.dev@free.fr's avatar eric.le.bihan.dev@free.fr Committed by Peter Korsgaard
Browse files

weston: fix fbdev backend.



The compilation of the program weston-launcher is currently disabled, so
the only way to launch Weston (on framebuffer) is to execute (as root):

  $ openvt -c 2 -s -- weston \
  	--backend=/usr/lib/weston/fbdev-backend.so \
	--tty=2 \
	--log=/tmp/weston.log

Unfortunately you will only end up with a black screen. The reason is
given in the log file:

  /dev/tty2 is already in graphics mode, is another display server running?

Here is the fix from upcoming version 1.4.

Signed-off-by: default avatarEric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: default avatarPeter Korsgaard <peter@korsgaard.com>
parent 29b6093f
Loading
Loading
Loading
Loading
+46 −0
Original line number Diff line number Diff line
From 1641d14b824df487bba23597aa128219c057df88 Mon Sep 17 00:00:00 2001
From: David Herrmann <dh.herrmann@gmail.com>
Date: Tue, 15 Oct 2013 14:29:57 +0200
Subject: [PATCH] fbdev: open launcher only once

We currently call launcher_connect() twice, which is redundant and
amazingly works (ugh?). Fix this and connect only once to the launcher.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
---
 src/compositor-fbdev.c |   12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/src/compositor-fbdev.c b/src/compositor-fbdev.c
index 002ce0b..4376345 100644
--- a/src/compositor-fbdev.c
+++ b/src/compositor-fbdev.c
@@ -883,15 +883,6 @@ fbdev_compositor_create(struct wl_display *display, int *argc, char *argv[],
 	                           config) < 0)
 		goto out_free;

-	/* Check if we run fbdev-backend using weston-launch */
-	compositor->base.launcher =
-		weston_launcher_connect(&compositor->base, param->tty);
-	if (compositor->base.launcher == NULL && geteuid() != 0) {
-		weston_log("fatal: fbdev backend should be run "
-			   "using weston-launch binary or as root\n");
-		goto out_compositor;
-	}
-
 	compositor->udev = udev_new();
 	if (compositor->udev == NULL) {
 		weston_log("Failed to initialize udev context.\n");
@@ -905,7 +896,8 @@ fbdev_compositor_create(struct wl_display *display, int *argc, char *argv[],
 	compositor->base.launcher =
 		weston_launcher_connect(&compositor->base, param->tty);
 	if (!compositor->base.launcher) {
-		weston_log("Failed to set up launcher.\n");
+		weston_log("fatal: fbdev backend should be run "
+			   "using weston-launch binary or as root\n");
 		goto out_udev;
 	}

--
1.7.9.5