Here’s a patch to fix this problem. It requires version 2.20.1 of
libgnome-keyring, but I didn’t know how to patch the debian/ directory
to do that.
diff -ru gnome-python-clean/gnome-python-desktop-2.20.0/gnomekeyring/gnomekeyringmodule.c gnome-python/gnome-python-desktop-2.20.0/gnomekeyring/gnomekeyringmodule.c
--- gnome-python-clean/gnome-python-desktop-2.20.0/gnomekeyring/gnomekeyringmodule.c 2007-09-15 16:44:56.000000000 -0400
+++ gnome-python/gnome-python-desktop-2.20.0/gnomekeyring/gnomekeyringmodule.c 2008-02-01 11:51:41.000000000 -0500
@@ -19,6 +19,7 @@
static PyObject *PyGKExc_IOError; /* GNOME_KEYRING_RESULT_IO_ERROR */
static PyObject *PyGKExc_CancelledError; /* GNOME_KEYRING_RESULT_CANCELLED */
static PyObject *PyGKExc_AlreadyExistsError; /* GNOME_KEYRING_RESULT_ALREADY_EXISTS */
+static PyObject *PyGKExc_NoMatchError; /* GNOME_KEYRING_RESULT_NO_MATCH */
PyObject *
pygnomekeyring_result_to_exception(GnomeKeyringResult result)
@@ -37,6 +38,7 @@
keyring_result_case(IO_ERROR, IO);
keyring_result_case(CANCELLED, Cancelled);
keyring_result_case(ALREADY_EXISTS, AlreadyExists);
+ keyring_result_case(NO_MATCH, NoMatch);
#undef keyring_result_case
@@ -86,6 +88,7 @@
register_exception(IO);
register_exception(Cancelled);
register_exception(AlreadyExists);
+ register_exception(NoMatch);
#undef register_exception
}