diff --git a/evolution-2.10.3-fix-ETreeTableAdapter-crash.patch b/evolution-2.10.3-fix-ETreeTableAdapter-crash.patch new file mode 100644 index 0000000..1591e0e --- /dev/null +++ b/evolution-2.10.3-fix-ETreeTableAdapter-crash.patch @@ -0,0 +1,50 @@ +--- trunk/widgets/table/e-tree-table-adapter.c 2007/08/07 09:35:42 33964 ++++ trunk/widgets/table/e-tree-table-adapter.c 2007/08/24 09:10:55 34090 +@@ -80,6 +80,8 @@ + int node_removed_id; + int node_request_collapse_id; + int sort_info_changed_id; ++ ++ guint resort_idle_id; + }; + + static void etta_sort_info_changed (ETableSortInfo *sort_info, ETreeTableAdapter *etta); +@@ -498,6 +500,11 @@ + { + ETreeTableAdapter *etta = E_TREE_TABLE_ADAPTER (object); + ++ if (etta->priv->resort_idle_id) { ++ g_source_remove (etta->priv->resort_idle_id); ++ etta->priv->resort_idle_id = 0; ++ } ++ + if (etta->priv->root) { + kill_gnode(etta->priv->root, etta); + etta->priv->root = NULL; +@@ -728,6 +735,8 @@ + etta->priv->node_inserted_id = 0; + etta->priv->node_removed_id = 0; + etta->priv->node_request_collapse_id = 0; ++ ++ etta->priv->resort_idle_id = 0; + } + + static void +@@ -746,6 +755,7 @@ + resort_model (ETreeTableAdapter *etta) + { + etta_sort_info_changed (NULL, etta); ++ etta->priv->resort_idle_id = 0; + return FALSE; + } + +@@ -758,7 +768,8 @@ + /* FIXME: Really it shouldnt be required. But a lot of thread + * which were supposed to be present in the list is way below + */ +- g_idle_add (resort_model, etta); ++ if (!etta->priv->resort_idle_id) ++ etta->priv->resort_idle_id = g_idle_add ((GSourceFunc) resort_model, etta); + } + + static void diff --git a/evolution.spec b/evolution.spec index af71454..572bdb5 100644 --- a/evolution.spec +++ b/evolution.spec @@ -47,7 +47,7 @@ Name: evolution Version: 2.10.3 -Release: 5%{?dist} +Release: 6%{?dist} License: GPL Group: Applications/Productivity Summary: GNOME's next-generation groupware suite @@ -173,6 +173,9 @@ Patch54: evolution-2.10.1-send-recv-dialog.patch # GNOME bug #380534 Patch55: evolution-2.10.3-version-checks.patch +# GNOME bug #239441 +Patch56: evolution-2.10.3-fix-ETreeTableAdapter-crash.patch + ## Dependencies ### Requires(post): GConf2 @@ -330,6 +333,7 @@ Development files needed for building things which link against evolution. %patch53 -p1 -b .check-uri-before-strcmp %patch54 -p1 -b .send-recv-dialog %patch55 -p1 -b .version-checks +%patch56 -p1 -b .ETreeTableAdapter-idle-crash mkdir -p krb5-fakeprefix/include mkdir -p krb5-fakeprefix/lib @@ -751,6 +755,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/evolution/%{evo_major}/libmenus.so %changelog +* Wed Oct 31 2007 Dan Williams - 2.10.3-6.fc7 +- Backport fix for GNOME bug #239441 + * Thu Aug 30 2007 Matthew Barnes - 2.10.3-5.fc7 - Revise patch for GNOME bug #417999 to fix GNOME bug #447591 (Automatic Contacts combo boxes don't work).