mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-05-09 06:08:01 +02:00
Merge branch 'fix-macos-system-bus' into 'master'
sysdeps-unix: Report missing launchd session bus as non-fatal Closes #510 See merge request dbus/dbus!461
This commit is contained in:
commit
c0f0516662
1 changed files with 11 additions and 20 deletions
|
|
@ -4391,6 +4391,9 @@ _dbus_get_autolaunch_address (const char *scope,
|
|||
#else
|
||||
dbus_set_error_const (error, DBUS_ERROR_NOT_SUPPORTED,
|
||||
"Using X11 for dbus-daemon autolaunch was disabled at compile time, "
|
||||
#ifdef DBUS_ENABLE_LAUNCHD
|
||||
"verify that org.freedesktop.dbus-session.plist is loaded or "
|
||||
#endif
|
||||
"set your DBUS_SESSION_BUS_ADDRESS instead");
|
||||
return FALSE;
|
||||
#endif
|
||||
|
|
@ -4532,39 +4535,27 @@ _dbus_lookup_launchd_socket (DBusString *socket_path,
|
|||
|
||||
#ifdef DBUS_ENABLE_LAUNCHD
|
||||
static dbus_bool_t
|
||||
_dbus_lookup_session_address_launchd (DBusString *address, DBusError *error)
|
||||
_dbus_lookup_session_address_launchd (dbus_bool_t *supported,
|
||||
DBusString *address,
|
||||
DBusError *error)
|
||||
{
|
||||
dbus_bool_t valid_socket;
|
||||
DBusString socket_path;
|
||||
|
||||
if (_dbus_check_setuid ())
|
||||
{
|
||||
dbus_set_error_const (error, DBUS_ERROR_NOT_SUPPORTED,
|
||||
"Unable to find launchd socket when setuid");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (!_dbus_string_init (&socket_path))
|
||||
{
|
||||
_DBUS_SET_OOM (error);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
valid_socket = _dbus_lookup_launchd_socket (&socket_path, "DBUS_LAUNCHD_SESSION_BUS_SOCKET", error);
|
||||
|
||||
if (dbus_error_is_set(error))
|
||||
{
|
||||
_dbus_string_free(&socket_path);
|
||||
return FALSE;
|
||||
}
|
||||
valid_socket = _dbus_lookup_launchd_socket (&socket_path, "DBUS_LAUNCHD_SESSION_BUS_SOCKET", NULL);
|
||||
|
||||
if (!valid_socket)
|
||||
{
|
||||
dbus_set_error(error, "no socket path",
|
||||
"launchd did not provide a socket path, "
|
||||
"verify that org.freedesktop.dbus-session.plist is loaded!");
|
||||
_dbus_verbose ("launchd did not provide a socket path");
|
||||
_dbus_string_free(&socket_path);
|
||||
return FALSE;
|
||||
*supported = FALSE;
|
||||
return TRUE; /* Cannot use it, but not an error */
|
||||
}
|
||||
if (!_dbus_string_append (address, "unix:path="))
|
||||
{
|
||||
|
|
@ -4682,7 +4673,7 @@ _dbus_lookup_session_address (dbus_bool_t *supported,
|
|||
{
|
||||
#ifdef DBUS_ENABLE_LAUNCHD
|
||||
*supported = TRUE;
|
||||
return _dbus_lookup_session_address_launchd (address, error);
|
||||
return _dbus_lookup_session_address_launchd (supported, address, error);
|
||||
#else
|
||||
*supported = FALSE;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue