From d5df7842992cca54f767bb597dcd11a0e3a228b4 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Sun, 19 Jun 2011 23:55:14 +0200 Subject: [PATCH] Fixed input server start fallback After failing to start the input server by signature, the fallback didn't append the input server name to the servers directory returned by find_directory(). --- src/servers/app/Desktop.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/servers/app/Desktop.cpp b/src/servers/app/Desktop.cpp index 6379d569de..3b280e2c50 100644 --- a/src/servers/app/Desktop.cpp +++ b/src/servers/app/Desktop.cpp @@ -2373,10 +2373,11 @@ Desktop::_LaunchInputServer() // Could not load input_server by signature, try well-known location BEntry entry; - BPath systemServersDir; - if (find_directory(B_SYSTEM_SERVERS_DIRECTORY, &systemServersDir) == B_OK) - entry.SetTo(systemServersDir.Path()); - else + BPath inputServerPath; + if (find_directory(B_SYSTEM_SERVERS_DIRECTORY, &inputServerPath) == B_OK + && inputServerPath.Append("input_server") == B_OK) { + entry.SetTo(inputServerPath.Path()); + } else entry.SetTo("/system/servers/input_server"); entry_ref ref; status_t entryStatus = entry.GetRef(&ref);