Репозитории ALT
S: | 3.2.6-alt4 |
5.1: | 2.26.2-alt3.1 |
4.1: | 2.22.0-alt1 |
4.0: | 2.16.1-alt1 |
3.0: | 1.0.9-alt7.1 |
Группа :: Графические оболочки/GNOME
Пакет: GConf
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: GConf-1.0.9-mdk-locallock.patch
Скачать
Скачать
--- GConf-1.0.9/gconf/gconf-internals.c.locallock 2003-10-15 14:47:31.000000000 +0200
+++ GConf-1.0.9/gconf/gconf-internals.c 2003-10-28 15:40:15.000000000 +0100
@@ -2957,10 +2957,53 @@
}
}
+enum { UNKNOWN, LOCAL, NORMAL };
+
+
+static gboolean
+gconf_use_local_locks (void)
+{
+ static int local_locks = UNKNOWN;
+
+ if (local_locks == UNKNOWN)
+ {
+ const char *l =
+ g_getenv ("GCONF_GLOBAL_LOCKS");
+
+ if (l && atoi (l) == 1)
+ local_locks = NORMAL;
+ else
+ local_locks = LOCAL;
+ }
+
+ return local_locks == LOCAL;
+}
+
char*
gconf_get_daemon_dir (void)
{
- return g_strconcat (g_get_home_dir (), "/.gconfd", NULL);
+ if (gconf_use_local_locks ())
+ {
+ char *s;
+ char *subdir;
+ char *tmpdir;
+
+ subdir = g_strconcat ("gconfd-", g_get_user_name (), NULL);
+
+ if (g_getenv ("GCONF_TMPDIR")) {
+ tmpdir = g_getenv ("GCONF_TMPDIR");
+ } else {
+ tmpdir = g_get_tmp_dir ();
+ }
+
+ s = g_strconcat (tmpdir,"/", subdir, NULL);
+
+ g_free (subdir);
+
+ return s;
+ }
+ else
+ return g_strconcat (g_get_home_dir (), "/.gconfd", NULL);
}
char*