r1052 - in /unstable/evolution-data-server/debian: changelog patches/55_fix_gpg_breaks_keyring.patch

heikkih-guest at users.alioth.debian.org heikkih-guest at users.alioth.debian.org
Mon May 19 19:09:45 UTC 2008


Author: heikkih-guest
Date: Mon May 19 19:09:45 2008
New Revision: 1052

URL: http://svn.debian.org/wsvn/pkg-evolution/?sc=1&rev=1052
Log:
Add patch from upstream to stop gpg breaking the keyring

Added:
    unstable/evolution-data-server/debian/patches/55_fix_gpg_breaks_keyring.patch
Modified:
    unstable/evolution-data-server/debian/changelog

Modified: unstable/evolution-data-server/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-evolution/unstable/evolution-data-server/debian/changelog?rev=1052&op=diff
==============================================================================
--- unstable/evolution-data-server/debian/changelog (original)
+++ unstable/evolution-data-server/debian/changelog Mon May 19 19:09:45 2008
@@ -1,8 +1,14 @@
 evolution-data-server (2.22.1.1-2) UNRELEASED; urgency=low
 
+  [ Oystein Gisnas ]
   * Fix spelling mistake in package description
 
- -- Oystein Gisnas <oystein at gisnas.net>  Sun, 04 May 2008 18:15:00 +0200
+  [ Heikki Henriksen ]
+  * debian/patches/55_fix_gpg_breaks_keyring.patch:
+    - Add patch from upstream to stop gpg breaking the keyring
+      (closes: #481940)
+
+ -- Heikki Henriksen <heikkih at gmail.com>  Mon, 19 May 2008 21:01:46 +0200
 
 evolution-data-server (2.22.1.1-1) unstable; urgency=low
 

Added: unstable/evolution-data-server/debian/patches/55_fix_gpg_breaks_keyring.patch
URL: http://svn.debian.org/wsvn/pkg-evolution/unstable/evolution-data-server/debian/patches/55_fix_gpg_breaks_keyring.patch?rev=1052&op=file
==============================================================================
--- unstable/evolution-data-server/debian/patches/55_fix_gpg_breaks_keyring.patch (added)
+++ unstable/evolution-data-server/debian/patches/55_fix_gpg_breaks_keyring.patch Mon May 19 19:09:45 2008
@@ -1,0 +1,71 @@
+--- libedataserverui/e-passwords.c	(revision 8793)
++++ libedataserverui/e-passwords.c	(working copy)
+@@ -193,19 +193,29 @@ ep_keyring_error_domain (void)
+ }
+ 
+ static EUri *
+-ep_keyring_uri_new (const gchar *string)
++ep_keyring_uri_new (const gchar *string,
++                    GError **error)
+ {
+ 	EUri *uri;
+ 
+ 	uri = e_uri_new (string);
+-	if (uri == NULL)
+-		return NULL;
++	g_return_val_if_fail (uri != NULL, NULL);
+ 
+ 	/* LDAP URIs do not have usernames, so use the URI as the username. */
+ 	if (uri->user == NULL && uri->protocol != NULL &&
+ 			(strcmp (uri->protocol, "ldap") == 0|| strcmp (uri->protocol, "google") == 0))
+ 		uri->user = g_strdelimit (g_strdup (string), "/=", '_');
+ 
++	/* Make sure the URI has the required components. */
++	if (uri->user == NULL && uri->host == NULL) {
++		g_set_error (
++			error, EP_KEYRING_ERROR,
++			GNOME_KEYRING_RESULT_BAD_ARGUMENTS,
++			_("Keyring key is unusable: no user or host name"));
++		e_uri_free (uri);
++		uri = NULL;
++	}
++
+ 	return uri;
+ }
+ 
+@@ -618,8 +628,9 @@ ep_remember_password_keyring (EPassMsg *
+ 		return;
+ 	}
+ 
+-	uri = ep_keyring_uri_new (msg->key);
+-	g_return_if_fail (uri != NULL);
++	uri = ep_keyring_uri_new (msg->key, &msg->error);
++	if (uri == NULL)
++		return;
+ 
+ 	/* Only remove the password from the session hash
+ 	 * if the keyring insertion was successful. */
+@@ -681,8 +692,9 @@ ep_forget_password_keyring (EPassMsg *ms
+ 	EUri *uri;
+ 	GError *error = NULL;
+ 
+-	uri = ep_keyring_uri_new (msg->key);
+-	g_return_if_fail (uri != NULL);
++	uri = ep_keyring_uri_new (msg->key, &msg->error);
++	if (uri == NULL)
++		return;
+ 
+ 	/* Find all Evolution passwords matching the URI and delete them. */
+ 	passwords = ep_keyring_lookup_passwords (uri->user, uri->host, &error);
+@@ -754,8 +766,9 @@ ep_get_password_keyring (EPassMsg *msg)
+ 	EUri *uri;
+ 	GError *error = NULL;
+ 
+-	uri = ep_keyring_uri_new (msg->key);
+-	g_return_if_fail (uri != NULL);
++	uri = ep_keyring_uri_new (msg->key, &msg->error);
++	if (uri == NULL)
++		return;
+ 
+ 	/* Find the first Evolution password that matches the URI. */
+ 	passwords = ep_keyring_lookup_passwords (uri->user, uri->host, &error);




More information about the pkg-evolution-commits mailing list