Update to 3.1.5

This commit is contained in:
Milan Crha 2011-08-15 12:11:10 +02:00
commit 6674911764
4 changed files with 8 additions and 36 deletions

1
.gitignore vendored
View file

@ -18,3 +18,4 @@ evolution-2.31.5.tar.bz2
/evolution-3.1.2.tar.bz2
/evolution-3.1.3.tar.bz2
/evolution-3.1.4.tar.bz2
/evolution-3.1.5.tar.bz2

View file

@ -1,29 +0,0 @@
diff -up evolution-3.1.4/e-util/e-module.c.resident-modules evolution-3.1.4/e-util/e-module.c
--- evolution-3.1.4/e-util/e-module.c.resident-modules 2011-06-13 10:25:40.000000000 -0400
+++ evolution-3.1.4/e-util/e-module.c 2011-08-05 09:45:15.830757214 -0400
@@ -139,6 +139,25 @@ module_load (GTypeModule *type_module)
priv->load (type_module);
+ /* XXX This is a Band-Aid for a design flaw in EExtension. If the
+ * "extensible_type" member of EExtensionClass is set to a GType
+ * that hasn't already been registered, then when the extension's
+ * module is unloaded the GType registration that was triggered
+ * by setting "extensible_type" will be invalidated and cause
+ * Evolution to malfunction when the module is loaded again.
+ *
+ * Extension modules get loaded and unloaded repeatedly by
+ * e_extensible_load_extensions(), which temporarily references
+ * all extension classes and picks out the ones it needs for a
+ * given EExtensible instance based on the "extensible_type"
+ * class member.
+ *
+ * Making the module resident prevents the aforementioned GType
+ * registration from being invalidated when the extension class
+ * is unreferenced.
+ */
+ g_module_make_resident (priv->module);
+
return TRUE;
fail:

View file

@ -27,8 +27,8 @@
### Abstract ###
Name: evolution
Version: 3.1.4
Release: 2%{?dist}
Version: 3.1.5
Release: 1%{?dist}
Group: Applications/Productivity
Summary: Mail and calendar client for GNOME
License: GPLv2+ and GFDL
@ -47,9 +47,6 @@ Patch10: evolution-1.4.4-ldap-x86_64-hack.patch
# RH bug #589555
Patch11: evolution-2.30.1-help-contents.patch
# Make all dynamically-loaded modules resident.
Patch12: evolution-3.1.4-resident-modules.patch
## Dependencies ###
Requires(pre): GConf2
@ -206,7 +203,6 @@ This package contains the plugin to import Microsoft Personal Storage Table
%setup -q -n evolution-%{version}
%patch10 -p1 -b .ldaphack
%patch11 -p1 -b .help-contents
%patch12 -p1 -b .resident-modules
mkdir -p krb5-fakeprefix/include
mkdir -p krb5-fakeprefix/lib
@ -637,6 +633,10 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
* Mon Aug 15 2011 Milan Crha <mcrha@redhat.com> - 3.1.5-1
- Update to 3.1.5
- Remove patch for resident modules (fixed upstream)
* Fri Aug 05 2011 Matthew Barnes <mbarnes@redhat.com> - 3.1.4-2
- Add patch to make all dynamically-loaded modules resident to avoid a
potential crash on startup.

View file

@ -1 +1 @@
eff3a714a3fa97a3ceb624a0a8fd1059 evolution-3.1.4.tar.bz2
01d2534c78884a2a1982d202d8e7896a evolution-3.1.5.tar.bz2