From a04b2f4c5ee741f5f74f848e580a8cdc4111e2ed Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Mon, 27 Sep 2021 18:39:20 -0400 Subject: [PATCH] Launch app_server in user context. This way, we get the user's environment variables, and so should input_server, which is started by app_server. This should, after 6 years, fix #12534. We may need to revisit this when/if we add multiuser support, but that is a problem for another day. Change-Id: I04698306bc68a585acd232e9f9d29c50bc170a1f Reviewed-on: https://review.haiku-os.org/c/haiku/+/4506 Reviewed-by: waddlesplash --- data/launch/system | 11 +++-------- data/launch/user | 8 ++++++-- src/servers/app/AppServer.cpp | 3 +++ 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/data/launch/system b/data/launch/system index 115a5bbdb6..d98c711fce 100644 --- a/data/launch/system +++ b/data/launch/system @@ -5,10 +5,6 @@ service x-vnd.Haiku-registrar { } } -service x-vnd.Haiku-app_server { - launch /system/servers/app_server -} - service x-vnd.Haiku-debug_server { launch /system/servers/debug_server } @@ -71,8 +67,7 @@ job x-vnd.Haiku-cddb_lookup { on volume_mounted } -target login { - job x-vnd.Haiku-autologin { - launch /system/bin/autologin - } +# target login +job x-vnd.Haiku-autologin { + launch /system/bin/autologin } diff --git a/data/launch/user b/data/launch/user index 1daf97e897..11ff4a7ff7 100644 --- a/data/launch/user +++ b/data/launch/user @@ -1,6 +1,10 @@ -target desktop { - env /system/boot/SetupEnvironment +env /system/boot/SetupEnvironment +service x-vnd.Haiku-app_server { + launch /system/servers/app_server +} + +target desktop { service x-vnd.Be-TRAK { launch /system/Tracker legacy diff --git a/src/servers/app/AppServer.cpp b/src/servers/app/AppServer.cpp index c9041701f2..a67d554c1c 100644 --- a/src/servers/app/AppServer.cpp +++ b/src/servers/app/AppServer.cpp @@ -70,6 +70,8 @@ AppServer::AppServer(status_t* status) // Create the bitmap allocator. Object declared in BitmapManager.cpp gBitmapManager = new BitmapManager(); +#if 0 + // This is not presently needed, as app_server is launched from the login session. #ifndef HAIKU_TARGET_PLATFORM_LIBBE_TEST // TODO: check the attached displays, and launch login session for them BMessage data; @@ -77,6 +79,7 @@ AppServer::AppServer(status_t* status) data.AddInt32("session", 0); BLaunchRoster().Target("login", data); #endif +#endif }