diff --git a/seahorse-fix-crash-on-keyserver-add.patch b/seahorse-fix-crash-on-keyserver-add.patch new file mode 100644 index 0000000..e3d10e5 --- /dev/null +++ b/seahorse-fix-crash-on-keyserver-add.patch @@ -0,0 +1,40 @@ +commit bf10531f540db1941fb3418c01b01b45d7d196e9 +Author: Vincent Untz +Date: Thu Oct 13 19:09:04 2011 +0200 + + Fix crash when adding a non-LDAP keyserver + + https://bugzilla.gnome.org/show_bug.cgi?id=661683 + +diff --git a/libseahorse/seahorse-prefs.c b/libseahorse/seahorse-prefs.c +index 93f6c2f..8afbc7a 100644 +--- a/libseahorse/seahorse-prefs.c ++++ b/libseahorse/seahorse-prefs.c +@@ -233,20 +233,21 @@ calculate_keyserver_uri (SeahorseWidget *swidget) + const gchar *host = NULL; + const gchar *port = NULL; + GtkWidget *widget; +- GList *types; ++ gchar **types; + gint active; + gchar *uri; ++ guint i; + + /* Figure out the scheme */ + widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "keyserver-type")); + g_return_val_if_fail (widget != NULL, NULL); + + active = gtk_combo_box_get_active (GTK_COMBO_BOX (widget)); +- if (active >= 0) { +- types = g_object_get_data (G_OBJECT (swidget), "keyserver-types"); +- scheme = (const gchar*)g_list_nth_data (types, active); +- if (scheme && !scheme[0]) +- scheme = NULL; ++ types = g_object_get_data (G_OBJECT (swidget), "keyserver-types"); ++ if (active >= 0 && types) { ++ for (i = 0; types[i] != NULL && i < active; i++); ++ if (i == active && types[active] && types[active][0]) ++ scheme = types[active]; + } + + /* The host */ diff --git a/seahorse.changes b/seahorse.changes index 5263f0b..df68709 100644 --- a/seahorse.changes +++ b/seahorse.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Oct 13 17:10:48 UTC 2011 - vuntz@opensuse.org + +- Add seahorse-fix-crash-on-keyserver-add.patch: fix crash when + adding a keyserver. Fix bnc#723908. + ------------------------------------------------------------------- Mon Sep 26 07:44:12 UTC 2011 - vuntz@opensuse.org diff --git a/seahorse.spec b/seahorse.spec index 4ad39b0..7171d62 100644 --- a/seahorse.spec +++ b/seahorse.spec @@ -26,6 +26,8 @@ Release: 1 Summary: GNOME interface for gnupg Url: http://projects.gnome.org/seahorse/ Source: http://download.gnome.org/sources/seahorse/3.2/%{name}-%{version}.tar.bz2 +# PATCH-FIX-UPSTREAM seahorse-fix-crash-on-keyserver-add.patch bgo#661683 bnc#723908 vuntz@opensuse.org -- Fix crash when adding a keyserver +Patch0: seahorse-fix-crash-on-keyserver-add.patch BuildRequires: fdupes BuildRequires: gnome-doc-utils-devel BuildRequires: gpg2 @@ -55,6 +57,7 @@ Seahorse is a GNOME interface for gnupg. It uses gpgme as the backend. %prep %setup -q translation-update-upstream +%patch0 -p1 %build %configure \