summaryrefslogtreecommitdiffstats
path: root/tools/dbus-launch-x11.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/dbus-launch-x11.c')
-rw-r--r--tools/dbus-launch-x11.c12
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),