packages: gnome-keyring/gnome-keyring.spec, gnome-keyring/gnome-keyring-bug...

baggins baggins at pld-linux.org
Sun Nov 8 00:12:55 CET 2009


Author: baggins                      Date: Sat Nov  7 23:12:55 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
- rel 2
- fix https://bugzilla.gnome.org/show_bug.cgi?id=595698
  gnome-keyring-daemon doesn't exit properly when the session ends

---- Files affected:
packages/gnome-keyring:
   gnome-keyring.spec (1.66 -> 1.67) , gnome-keyring-bug-595698.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/gnome-keyring/gnome-keyring.spec
diff -u packages/gnome-keyring/gnome-keyring.spec:1.66 packages/gnome-keyring/gnome-keyring.spec:1.67
--- packages/gnome-keyring/gnome-keyring.spec:1.66	Fri Sep 25 22:40:02 2009
+++ packages/gnome-keyring/gnome-keyring.spec	Sun Nov  8 00:12:49 2009
@@ -3,11 +3,12 @@
 Summary(pl.UTF-8):	Przechowywanie haseł i innych tajnych danych użytkowników
 Name:		gnome-keyring
 Version:	2.28.0
-Release:	1
+Release:	2
 License:	LGPL v2+ (library), GPL v2+ (programs)
 Group:		X11/Applications
 Source0:	http://ftp.gnome.org/pub/GNOME/sources/gnome-keyring/2.28/%{name}-%{version}.tar.bz2
 # Source0-md5:	07fa253d8506c22640d74eb4fc90a092
+Patch0:		%{name}-bug-595698.patch
 URL:		http://live.gnome.org/GnomeKeyring
 BuildRequires:	GConf2-devel >= 2.24.0
 BuildRequires:	autoconf
@@ -121,6 +122,7 @@
 
 %prep
 %setup -q
+%patch0 -p1
 
 rm -f po/ca at valencia.po
 sed -i -e 's/ca at valencia//' po/LINGUAS
@@ -228,6 +230,11 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.67  2009/11/07 23:12:49  baggins
+- rel 2
+- fix https://bugzilla.gnome.org/show_bug.cgi?id=595698
+  gnome-keyring-daemon doesn't exit properly when the session ends
+
 Revision 1.66  2009/09/25 20:40:02  megabajt
 - updated to 2.28.0
 

================================================================
Index: packages/gnome-keyring/gnome-keyring-bug-595698.patch
diff -u /dev/null packages/gnome-keyring/gnome-keyring-bug-595698.patch:1.1
--- /dev/null	Sun Nov  8 00:12:55 2009
+++ packages/gnome-keyring/gnome-keyring-bug-595698.patch	Sun Nov  8 00:12:49 2009
@@ -0,0 +1,59 @@
+diff --git a/daemon/gkr-daemon.c b/daemon/gkr-daemon.c
+index c63081e..ea85edf 100644
+--- a/daemon/gkr-daemon.c
++++ b/daemon/gkr-daemon.c
+@@ -43,6 +43,7 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <pthread.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
+@@ -90,6 +91,8 @@ static gboolean run_for_start = FALSE;
+ static gchar* run_components = NULL;
+ static gchar* login_password = NULL;
+ static gboolean initialization_completed = FALSE;
++static gboolean sig_thread_valid = FALSE;
++static pthread_t sig_thread;
+ 
+ static GOptionEntry option_entries[] = {
+ 	{ "foreground", 'f', 0, G_OPTION_ARG_NONE, &run_foreground, 
+@@ -370,7 +373,7 @@ signal_thread (gpointer user_data)
+ static void
+ setup_signal_handling (GMainLoop *loop)
+ {
+-	GError *error = NULL;
++	int res;
+ 
+ 	/*
+ 	 * Block these signals for this thread, and any threads
+@@ -387,11 +390,12 @@ setup_signal_handling (GMainLoop *loop)
+ 	sigaddset (&signal_set, SIGTERM);
+ 	pthread_sigmask (SIG_BLOCK, &signal_set, NULL);
+ 
+-	g_thread_create (signal_thread, loop, FALSE, &error);
+-	if (error != NULL) {
++	res = pthread_create (&sig_thread, NULL, signal_thread, loop);
++	if (res == 0) {
++		sig_thread_valid = TRUE;
++	} else {
+ 		g_warning ("couldn't startup thread for signal handling: %s",
+-		           error && error->message ? error->message : "");
+-		g_clear_error (&error);
++		           g_strerror (res));
+ 	}
+ }
+ 
+@@ -404,7 +408,10 @@ gkr_daemon_quit (void)
+ 	 * starts the shutdown process.
+ 	 */
+ 
+-	raise (SIGTERM);
++	if (sig_thread_valid)
++		pthread_kill (sig_thread, SIGTERM);
++	else
++		raise (SIGTERM);
+ }
+ 
+ static void
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/gnome-keyring/gnome-keyring.spec?r1=1.66&r2=1.67&f=u



More information about the pld-cvs-commit mailing list