? depcomp
? gnome-keyring-1-uninstalled.pc
? install-sh
? missing
? mkinstalldirs
? po/stamp-it
Index: gnome-keyring-daemon.c
===================================================================
RCS file: /cvs/gnome/gnome-keyring/gnome-keyring-daemon.c,v
retrieving revision 1.36
diff -u -p -r1.36 gnome-keyring-daemon.c
--- gnome-keyring-daemon.c	20 Apr 2006 09:02:38 -0000	1.36
+++ gnome-keyring-daemon.c	17 May 2006 16:56:51 -0000
@@ -343,23 +343,36 @@ gnome_keyring_application_ref_new_from_p
 	{
 		char *buffer;
 		int len;
+		gsize cmdline_len, cmdline_iter;
 		char *path = NULL;
+		char *cmdline_path, *cmdline = NULL;
 		
 #if defined(__linux__)
-		path = g_strdup_printf ("/proc/%d/exe", pid);
+		cmdline_path = g_strdup_printf ("/proc/%d/cmdline", pid);
+		if (g_file_get_contents (cmdline_path, &cmdline, &cmdline_len, NULL)) {
+			for (cmdline_iter = 0; cmdline_iter < cmdline_len - 1; ++cmdline_iter) {
+				if (G_UNLIKELY(cmdline[cmdline_iter] == '\0'))
+					cmdline[cmdline_iter] = ' ';
+			}
+		} else
+			path = g_strdup_printf ("/proc/%d/exe", pid);
+		g_free(cmdline_path);
+		app_ref->pathname = cmdline;
 #elif defined(__FreeBSD__)
 		path = g_strdup_printf ("/proc/%d/file", pid);
 #endif
-		buffer = g_file_read_link (path, NULL);
-		g_free (path);
+		if (app_ref->pathname == NULL) {
+			buffer = g_file_read_link (path, NULL);
+			g_free (path);
 
-		len = (buffer != NULL) ? strlen (buffer) : 0;
-		if (len > 0) {
-			app_ref->pathname = g_malloc (len + 1);
-			memcpy (app_ref->pathname, buffer, len);
-			app_ref->pathname[len] = 0;
+			len = (buffer != NULL) ? strlen (buffer) : 0;
+			if (len > 0) {
+				app_ref->pathname = g_malloc (len + 1);
+				memcpy (app_ref->pathname, buffer, len);
+				app_ref->pathname[len] = 0;
+			}
+			g_free (buffer);
 		}
-		g_free (buffer);
 	}
 #endif
 
Index: gnome-keyring-private.h
===================================================================
RCS file: /cvs/gnome/gnome-keyring/gnome-keyring-private.h,v
retrieving revision 1.4
diff -u -p -r1.4 gnome-keyring-private.h
--- gnome-keyring-private.h	21 Feb 2005 07:53:39 -0000	1.4
+++ gnome-keyring-private.h	17 May 2006 16:56:51 -0000
@@ -28,7 +28,7 @@
 
 struct GnomeKeyringApplicationRef {
 	char *display_name;
-	char *pathname;
+	char *pathname;		/* exe or cmdline */
 };
 
 struct GnomeKeyringAccessControl {
