Magellan Linux

Contents of /trunk/consolekit/patches/consolekit-0.4.1-cleanup-console-tags.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 930 - (show annotations) (download)
Sun Nov 8 03:47:35 2009 UTC (14 years, 6 months ago) by niro
File size: 1680 byte(s)
-files and fixes for consolekit-0.4.1-r1

1 # http://patches.ubuntu.com/by-release/extracted/ubuntu/c/consolekit/0.2.10-1ubuntu9/
2 --- a/src/main.c 2008-07-25 03:19:34.000000000 +0200
3 +++ b/src/main.c 2008-07-26 00:25:13.000000000 +0200
4 @@ -149,6 +149,43 @@
5 unlink (CONSOLE_KIT_PID_FILE);
6 }
7
8 +#define CONSOLE_TAGS_DIR "/var/run/console"
9 +
10 +static void
11 +delete_console_tags (void)
12 +{
13 + GDir *dir;
14 + GError *error = NULL;
15 + const gchar *name;
16 +
17 + g_debug ("Cleaning up %s", CONSOLE_TAGS_DIR);
18 +
19 + dir = g_dir_open (CONSOLE_TAGS_DIR, 0, &error);
20 + if (dir == NULL) {
21 + g_debug ("Couldn't open directory %s: %s", CONSOLE_TAGS_DIR,
22 + error->message);
23 + g_error_free (error);
24 + return;
25 + }
26 + while ((name = g_dir_read_name (dir)) != NULL) {
27 + gchar *file;
28 + file = g_build_filename (CONSOLE_TAGS_DIR, name, NULL);
29 +
30 + g_debug ("Removing tag file: %s", file);
31 + if (unlink (file) == -1) {
32 + g_warning ("Couldn't delete tag file: %s", file);
33 + }
34 + g_free (file);
35 + }
36 +}
37 +
38 +static void
39 +cleanup (void)
40 +{
41 + delete_console_tags ();
42 + delete_pid ();
43 +}
44 +
45 /* copied from nautilus */
46 static int debug_log_pipes[2];
47
48 @@ -229,7 +266,7 @@
49 snprintf (pid, sizeof (pid), "%lu\n", (long unsigned) getpid ());
50 written = write (pf, pid, strlen (pid));
51 close (pf);
52 - g_atexit (delete_pid);
53 + g_atexit (cleanup);
54 } else {
55 g_warning ("Unable to write pid file %s: %s",
56 CONSOLE_KIT_PID_FILE,
57 @@ -312,6 +349,8 @@
58
59 g_debug ("initializing console-kit-daemon %s", VERSION);
60
61 + delete_console_tags ();
62 +
63 create_pid_file ();
64
65 manager = ck_manager_new ();