diff options
Diffstat (limited to 'tools/dbus-launch-x11.c')
-rw-r--r-- | tools/dbus-launch-x11.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/tools/dbus-launch-x11.c b/tools/dbus-launch-x11.c index f0588ad8..b7d1c208 100644 --- a/tools/dbus-launch-x11.c +++ b/tools/dbus-launch-x11.c @@ -98,6 +98,10 @@ get_session_file (void) char *result; char *p; + machine = get_machine_uuid (); + if (machine == NULL) + return NULL; + display = xstrdup (getenv ("DISPLAY")); if (display == NULL) { @@ -143,8 +147,6 @@ get_session_file (void) *p = '_'; } - machine = get_machine_uuid (); - home = get_homedir (); result = malloc (strlen (home) + strlen (prefix) + strlen (machine) + @@ -237,6 +239,10 @@ init_x_atoms (Display *display) if (init) return TRUE; + machine = get_machine_uuid (); + if (machine == NULL) + return FALSE; + user = getpwuid (getuid ()); if (user == NULL) { @@ -245,8 +251,6 @@ init_x_atoms (Display *display) } user_name = xstrdup(user->pw_name); - machine = get_machine_uuid (); - atom_name = malloc (strlen (machine) + strlen (user_name) + 2 + MAX (strlen (selection_prefix), MAX (strlen (address_prefix), |