--- GConf/gconf/gconf-internals.c 11 Aug 2003 17:04:01 -0000 1.120 +++ GConf/gconf/gconf-internals.c 15 Oct 2003 12:13:48 -0000 @@ -2785,10 +2785,17 @@ { char *s; char *subdir; + char *tmpdir; subdir = g_strconcat ("gconfd-", g_get_user_name (), NULL); - s = g_build_filename (g_get_tmp_dir (), subdir, NULL); + if (g_getenv ("GCONF_TMPDIR")) { + tmpdir = g_getenv ("GCONF_TMPDIR"); + } else { + tmpdir = g_get_tmp_dir (); + } + + s = g_build_filename (tmpdir, subdir, NULL); g_free (subdir); Index: gconf/gconf-sanity-check.c =================================================================== RCS file: /cvs/gnome/gconf/gconf/gconf-sanity-check.c,v retrieving revision 1.6 diff -u -r1.6 gconf-sanity-check.c --- GConf/gconf/gconf-sanity-check.c 27 Mar 2003 11:16:18 -0000 1.6 +++ GConf/gconf/gconf-sanity-check.c 15 Oct 2003 12:13:48 -0000 @@ -132,9 +132,23 @@ GError *err; err = NULL; - fd = g_file_open_tmp ("gconf-test-locking-file-XXXXXX", - &testfile, - &err); + if (g_getenv ("GCONF_TMPDIR")) { + testfile = g_build_filename(g_getenv ("GCONF_TMPDIR"), "gconf-test-locking-file-XXXXXX", NULL); + fd = g_mkstemp (testfile); + if (fd == -1) + { + g_set_error (&err, + G_FILE_ERROR, + g_file_error_from_errno (errno), + "Failed to create file '%s': %s", + testfile, g_strerror (errno)); + } + } + else { + fd = g_file_open_tmp ("gconf-test-locking-file-XXXXXX", + &testfile, + &err); + } if (err != NULL) {