Fix crash with multiple image attachments; bug #163372
authorDaniel Gryniewicz <dang@gentoo.org>
Tue, 30 Jan 2007 19:05:05 +0000 (19:05 +0000)
committerDaniel Gryniewicz <dang@gentoo.org>
Tue, 30 Jan 2007 19:05:05 +0000 (19:05 +0000)
Package-Manager: portage-2.1.2-r5

mail-client/evolution/ChangeLog
mail-client/evolution/Manifest
mail-client/evolution/evolution-2.8.2.1-r1.ebuild [new file with mode: 0644]
mail-client/evolution/files/digest-evolution-2.8.2.1-r1 [new file with mode: 0644]
mail-client/evolution/files/evolution-2.8.2.1-sig-handlers.patch [new file with mode: 0644]

index e020f87f70dfc847c0884d7da339204d8c3da747..ce3e99199b673e6629f4927be34d0dd41a495b1c 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for mail-client/evolution
 # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/ChangeLog,v 1.159 2007/01/21 21:47:51 kloeri Exp $
+# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/ChangeLog,v 1.160 2007/01/30 19:05:05 dang Exp $
+
+*evolution-2.8.2.1-r1 (30 Jan 2007)
+
+  30 Jan 2007; Daniel Gryniewicz <dang@gentoo.org>
+  +files/evolution-2.8.2.1-sig-handlers.patch, +evolution-2.8.2.1-r1.ebuild:
+  Fix crash with multiple image attachments; bug #163372
 
   21 Jan 2007; Bryan Ã˜stergaard <kloeri@gentoo.org>
   evolution-2.8.2.1.ebuild:
index f42ac04f22f7000286ccbae7cc396d9f641b5038..1001451fd5d5ff2284a22343763e4ce31b0a11de 100644 (file)
@@ -29,6 +29,10 @@ AUX evolution-2.8.2.1-bf-junk.patch.gz 10431 RMD160 86f5a645ebbc69a757b6087e1718
 MD5 dbf53f4869faead04a951a25d974805e files/evolution-2.8.2.1-bf-junk.patch.gz 10431
 RMD160 86f5a645ebbc69a757b6087e17186f87d1953e4e files/evolution-2.8.2.1-bf-junk.patch.gz 10431
 SHA256 a6b21ef3f465c8b10e1c0b07402ec3f0697432b70eac08b369ffe31f80f3c981 files/evolution-2.8.2.1-bf-junk.patch.gz 10431
+AUX evolution-2.8.2.1-sig-handlers.patch 1357 RMD160 cd50a106b1e05831f21ac1aece2aa7a0e568738b SHA1 9d736d39ad6529469c6d52dcb5ba0e7e06ed9e5e SHA256 e983f8705959f2d52cb4259cbda4cc6892280265b29a0192189dec38e7e03fc6
+MD5 7b85e3ca755762e4c060557cfd2124b9 files/evolution-2.8.2.1-sig-handlers.patch 1357
+RMD160 cd50a106b1e05831f21ac1aece2aa7a0e568738b files/evolution-2.8.2.1-sig-handlers.patch 1357
+SHA256 e983f8705959f2d52cb4259cbda4cc6892280265b29a0192189dec38e7e03fc6 files/evolution-2.8.2.1-sig-handlers.patch 1357
 DIST evolution-2.5.5.1-bf-junk.tar.bz2 10771 RMD160 7ae764761607d50024fbec32680bc57e04ac7879 SHA1 465205cf50770b72641995ec59617010dadaf204 SHA256 b8988b28836a201606d8fa651f48722ebac8c984dcc171f7f7a3b860d0f7a045
 DIST evolution-2.6.2.tar.bz2 12394719 RMD160 72133312fb9cceae74d9f0e570dd898d5119a10b SHA1 08a6a9bf3754fff71cbdf82857337b1edc13ef46 SHA256 a69c45e9deae3a2eea06af08eacb9266e6cdcd452dd600ad96c2de23effa56f5
 DIST evolution-2.8.1.1.tar.bz2 12897409 RMD160 f8a457e816372ee869092a9c33b0a03a81a85a85 SHA1 13fd219e15efce9522e871943ef157e9dbdc3a57 SHA256 0eeedf3808949772603bef4d54c879437dbc08d08dacba19f5994acc6ba60cb0
@@ -41,14 +45,18 @@ EBUILD evolution-2.8.1.1.ebuild 6035 RMD160 90ae806d781eb0406db923fe4da58fb8be07
 MD5 c2e74fd4f2583fffe511e32f7e0e7ddc evolution-2.8.1.1.ebuild 6035
 RMD160 90ae806d781eb0406db923fe4da58fb8be07e81e evolution-2.8.1.1.ebuild 6035
 SHA256 bf5f58aee7ff6c8136444cfdbc8a5fc4e70912ffff07f6174ae4aaea23477545 evolution-2.8.1.1.ebuild 6035
+EBUILD evolution-2.8.2.1-r1.ebuild 6145 RMD160 50c2dc70a347c0d0168c96b2e2e88c310d111f95 SHA1 3213e98e99bd80baa173b39061470bf0b9c0e72f SHA256 73b3606ef4519dd31eb59815ce0cd81a1ba783cd7407e57657573e244f0edad7
+MD5 bd5f29241daa16ab809461bc6ccf2c14 evolution-2.8.2.1-r1.ebuild 6145
+RMD160 50c2dc70a347c0d0168c96b2e2e88c310d111f95 evolution-2.8.2.1-r1.ebuild 6145
+SHA256 73b3606ef4519dd31eb59815ce0cd81a1ba783cd7407e57657573e244f0edad7 evolution-2.8.2.1-r1.ebuild 6145
 EBUILD evolution-2.8.2.1.ebuild 6041 RMD160 4b927787f5e5d0b4fe69d4ca6c5797b840da1a78 SHA1 0100895d6036e077da690ffbc22cc05ed82654ba SHA256 8cc87d6817c6f26c5b0e9ef3539af34ebd74a5af2f61577b1b77a504b2165702
 MD5 1b90d5eac078bc2bed7afd1ed27be3d9 evolution-2.8.2.1.ebuild 6041
 RMD160 4b927787f5e5d0b4fe69d4ca6c5797b840da1a78 evolution-2.8.2.1.ebuild 6041
 SHA256 8cc87d6817c6f26c5b0e9ef3539af34ebd74a5af2f61577b1b77a504b2165702 evolution-2.8.2.1.ebuild 6041
-MISC ChangeLog 40212 RMD160 261858ce587cb2449a32ffbec5de079e412dc36d SHA1 7175177bc871370711ca89ae8c90c382292ed5ad SHA256 3e7cbd1b47161fcaac282d394e5f71cf2d44c794e9222858b8a12f5c058d38b1
-MD5 102edecc3fa9ff0447e557383871afeb ChangeLog 40212
-RMD160 261858ce587cb2449a32ffbec5de079e412dc36d ChangeLog 40212
-SHA256 3e7cbd1b47161fcaac282d394e5f71cf2d44c794e9222858b8a12f5c058d38b1 ChangeLog 40212
+MISC ChangeLog 40433 RMD160 b1787860f1db4a6a8c0b3482ef6d5d22179eb7e6 SHA1 5d5c49457b0d297e7342b08e6659d0144a8caa95 SHA256 6d118be76d98110e1afaa7e6943d1b1d3b161e056f8c7873844d59885eca2b32
+MD5 93410d98b197a8b23f4fae369efbb7e0 ChangeLog 40433
+RMD160 b1787860f1db4a6a8c0b3482ef6d5d22179eb7e6 ChangeLog 40433
+SHA256 6d118be76d98110e1afaa7e6943d1b1d3b161e056f8c7873844d59885eca2b32 ChangeLog 40433
 MISC metadata.xml 228 RMD160 56f093a5237fbe1d26c6914d47d4092d9de0cbcf SHA1 a7000d8d92e63e8b0bcb2531adea06af0fb4ceac SHA256 2f477aca2b0940f4b8d5a5817f1def0daa79846e5d3cb9b6c832a02ee7be298a
 MD5 adc1e2cec38f3e23b706de11a2ac0d92 metadata.xml 228
 RMD160 56f093a5237fbe1d26c6914d47d4092d9de0cbcf metadata.xml 228
@@ -62,10 +70,13 @@ SHA256 6bcce6b1bfc47b5afa122918e98dd88789e4820a5f45f0804d17398e46c9dcf3 files/di
 MD5 69f24fe63512a4a3c5568d92cc01df88 files/digest-evolution-2.8.2.1 539
 RMD160 bc777ef9751d4b4bf1b3d795245872dbcd8f878f files/digest-evolution-2.8.2.1 539
 SHA256 d973eab10ec33eb05052ae144c088a0a9ee7c983c5c9d62a9096c1dcbc780561 files/digest-evolution-2.8.2.1 539
+MD5 69f24fe63512a4a3c5568d92cc01df88 files/digest-evolution-2.8.2.1-r1 539
+RMD160 bc777ef9751d4b4bf1b3d795245872dbcd8f878f files/digest-evolution-2.8.2.1-r1 539
+SHA256 d973eab10ec33eb05052ae144c088a0a9ee7c983c5c9d62a9096c1dcbc780561 files/digest-evolution-2.8.2.1-r1 539
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.1 (GNU/Linux)
 
-iD8DBQFFs99GugEuf3OQ0akRAs4dAJ4oewnYmzkT602h3Qjgcv5Azhq6igCggIvc
-bTvZQwTMTIs54aM62hjZXiw=
-=5m0L
+iD8DBQFFv5bkomPajV0RnrERAjgYAJ46o+9osV6RGJfTOQ5bGeV/vH8zGQCeKZOn
+jb7Y+rNpSnAGjgCT9+4G4TU=
+=oYev
 -----END PGP SIGNATURE-----
diff --git a/mail-client/evolution/evolution-2.8.2.1-r1.ebuild b/mail-client/evolution/evolution-2.8.2.1-r1.ebuild
new file mode 100644 (file)
index 0000000..24a2ede
--- /dev/null
@@ -0,0 +1,204 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/evolution-2.8.2.1-r1.ebuild,v 1.1 2007/01/30 19:05:05 dang Exp $
+
+inherit eutils flag-o-matic alternatives gnome2 autotools
+
+DESCRIPTION="Integrated mail, addressbook and calendaring functionality"
+HOMEPAGE="http://www.gnome.org/projects/evolution/"
+SRC_URI="${SRC_URI}
+       bogofilter? ( mirror://gentoo/${PN}-2.5.5.1-bf-junk.tar.bz2 )"
+
+LICENSE="GPL-2 FDL-1.1"
+SLOT="2.0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+# gstreamer for audio-inline, when it uses 0.10
+IUSE="bogofilter crypt dbus debug doc hal ipv6 kerberos krb4 ldap mono nntp pda profile spell ssl"
+
+# Pango dependency required to avoid font rendering problems
+RDEPEND=">=x11-themes/gnome-icon-theme-1.2
+       dev-libs/atk
+       >=gnome-extra/gtkhtml-3.9.90
+       >=dev-libs/glib-2.10
+       >=gnome-base/orbit-2.9.8
+       >=gnome-base/libbonobo-2
+       >=gnome-extra/evolution-data-server-1.7.90
+       >=gnome-base/libbonoboui-2.4.2
+       >=gnome-base/gnome-vfs-2.4
+       >=gnome-base/libgnomeui-2
+       >=gnome-base/libglade-2
+       >=gnome-base/libgnomecanvas-2
+       >=dev-libs/libxml2-2
+       >=gnome-base/gconf-2
+       >=gnome-base/libgnomeprint-2.7
+       >=gnome-base/libgnomeprintui-2.2.1
+       >=x11-libs/gtk+-2
+       >=gnome-base/libgnome-2
+       >=net-libs/libsoup-2.2.96
+       >=x11-libs/pango-1.8.1
+       x11-libs/libnotify
+       hal? ( >=sys-apps/hal-0.5.4 )
+       pda? (
+               >=app-pda/gnome-pilot-2
+               >=app-pda/gnome-pilot-conduits-2 )
+       spell? ( >=app-text/gnome-spell-1.0.5 )
+       crypt? ( >=app-crypt/gnupg-1.2.2 )
+       ssl? (
+               >=dev-libs/nspr-4.6.1
+               >=dev-libs/nss-3.11 )
+       ldap? ( >=net-nds/openldap-2 )
+       kerberos? ( virtual/krb5 )
+       krb4? ( virtual/krb5 )
+       dbus? ( || (
+               dev-libs/dbus-glib
+               ~sys-apps/dbus-0.62 ) )
+       mono? ( >=dev-lang/mono-1 )
+       bogofilter? ( mail-filter/bogofilter )
+       !bogofilter? ( mail-filter/spamassassin )"
+#      gstreamer? (
+#              >=media-libs/gstreamer-0.10
+#              >=media-libs/gst-plugins-base-0.10 )
+
+DEPEND="${RDEPEND}
+       >=dev-util/pkgconfig-0.9
+       >=dev-util/intltool-0.35
+       sys-devel/gettext
+       sys-devel/bison
+       app-text/scrollkeeper
+       >=gnome-base/gnome-common-2.12.0
+       doc? ( >=dev-util/gtk-doc-0.6 )"
+
+DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS* README"
+ELTCONF="--reverse-deps"
+
+
+pkg_setup() {
+       G2CONF="--disable-default-binary \
+               --without-kde-applnk-path        \
+               $(use_enable ssl nss)            \
+               $(use_enable ssl smime)          \
+               $(use_enable ipv6)               \
+               $(use_enable mono)               \
+               $(use_enable nntp)               \
+               $(use_enable pda pilot-conduits) \
+               $(use_enable profile profiling)  \
+               $(use_with ldap openldap)        \
+               $(use_with kerberos krb5 /usr)"
+
+       if use krb4 && ! built_with_use virtual/krb5 krb4; then
+               ewarn
+               ewarn "In order to add kerberos 4 support, you have to emerge"
+               ewarn "virtual/krb5 with the 'krb4' USE flag enabled as well."
+               ewarn
+               ewarn "Skipping for now."
+               ewarn
+               G2CONF="${G2CONF} --without-krb4"
+       else
+               G2CONF="${G2CONF} $(use_with krb4 krb4 /usr)"
+       fi
+
+       # Plug-ins to install. Normally we would want something similar to
+       # --enable-plugins=all (plugins_base + plugins_standard), except for some
+       # special cases.
+       local plugins="calendar-file calendar-http calendar-weather \
+               itip-formatter plugin-manager default-source addressbook-file \
+               startup-wizard print-message mark-all-read groupwise-features \
+               groupwise-account-setup hula-account-setup mail-account-disable \
+               publish-calendar caldav \
+               bbdb subject-thread save-calendar select-one-source copy-tool \
+               mail-to-task mark-calendar-offline mailing-list-actions \
+               new-mail-notify default-mailer import-ics-attachments"
+
+       # For dev releases, add experimental plugins
+       plugins="${plugins} backup-restore folder-unsubscribe mail-to-meeting \
+               prefer-plain save-attachments"
+
+       if use bogofilter; then
+               plugins="${plugins} bf-junk-plugin"
+       else
+               plugins="${plugins} sa-junk-plugin"
+       fi
+
+       # The special cases
+
+       # remove this due to bug #128035 re-enable later if it doesn't dep on
+       # gstreamer-0.8
+       # use gstreamer && plugins="${plugins} audio-inline"
+       use dbus && plugins="${plugins} new-mail-notify"
+       use mono && plugins="${plugins} mono"
+
+       if built_with_use gnome-extra/evolution-data-server ldap; then
+               plugins="${plugins} exchange-operations"
+       fi
+
+       local pluginlist=""
+       for p in $plugins; do
+               [ "x$pluginlist" != "x" ] && pluginlist="${pluginlist},"
+               pluginlist="${pluginlist}${p}"
+       done
+
+       G2CONF="${G2CONF} --enable-plugins=${pluginlist}"
+}
+
+src_unpack() {
+       unpack ${P}.tar.bz2
+       cd "${S}"
+
+       gnome2_omf_fix help/omf.make
+
+       # Accept the list of plugins separated by commas instead of spaces.
+       epatch ${FILESDIR}/${PN}-2.3.7-configure_plugins.patch
+
+       # Move evo to URI-based saving
+       epatch ${FILESDIR}/${PN}-2.8.0-uri.patch.gz
+
+       # Fix 64-bit warnings
+       epatch ${FILESDIR}/${PN}-2.8.1.1-64-bit.patch
+
+       # Fix two images in preview crash; bug #163372
+       epatch "${FILESDIR}"/${P}-sig-handlers.patch
+
+       # Add bogofilter junk plugin source
+       use bogofilter && epatch ${FILESDIR}/${PN}-2.8.2.1-bf-junk.patch.gz
+
+
+       eaclocal || die
+       _elibtoolize --copy --force || die
+       eautoheader || die
+       eautomake || die
+       intltoolize --force || die
+       eautoconf || die
+}
+
+src_compile() {
+       # Use NSS/NSPR only if 'ssl' is enabled.
+       if use ssl ; then
+               sed -i -e "s|mozilla-nss|nss|
+                       s|mozilla-nspr|nspr|" ${S}/configure
+               G2CONF="${G2CONF} --enable-nss=yes"
+       else
+               G2CONF="${G2CONF} --without-nspr-libs --without-nspr-includes \
+                       --without-nss-libs --without-nss-includes"
+       fi
+
+       # problems with -O3 on gcc-3.3.1
+       replace-flags -O3 -O2
+
+       if [ "${ARCH}" = "hppa" ]; then
+               append-flags "-fPIC -ffunction-sections"
+               export LDFLAGS="-ffunction-sections -Wl,--stub-group-size=25000"
+       fi
+
+       gnome2_src_compile
+}
+
+pkg_postinst() {
+       gnome2_pkg_postinst
+
+       alternatives_auto_makesym "/usr/bin/evolution" "/usr/bin/evolution-[0-9].[0-9]"
+       einfo "To change the default browser if you are not using GNOME, do:"
+       einfo "gconftool-2 --set /desktop/gnome/url-handlers/http/command -t string 'mozilla %s'"
+       einfo "gconftool-2 --set /desktop/gnome/url-handlers/https/command -t string 'mozilla %s'"
+       einfo ""
+       einfo "Replace 'mozilla %s' with which ever browser you use."
+}
diff --git a/mail-client/evolution/files/digest-evolution-2.8.2.1-r1 b/mail-client/evolution/files/digest-evolution-2.8.2.1-r1
new file mode 100644 (file)
index 0000000..645792c
--- /dev/null
@@ -0,0 +1,6 @@
+MD5 31456188591167083628df719adc8f22 evolution-2.5.5.1-bf-junk.tar.bz2 10771
+RMD160 7ae764761607d50024fbec32680bc57e04ac7879 evolution-2.5.5.1-bf-junk.tar.bz2 10771
+SHA256 b8988b28836a201606d8fa651f48722ebac8c984dcc171f7f7a3b860d0f7a045 evolution-2.5.5.1-bf-junk.tar.bz2 10771
+MD5 3c860b732d4087843da4bbf5fc8f03b6 evolution-2.8.2.1.tar.bz2 12921518
+RMD160 9198236aded4c8b905eb990b725d01d399308491 evolution-2.8.2.1.tar.bz2 12921518
+SHA256 4fb4b7b987a8e0677b270b44d567e7821007f2b1c4af236c66d81f35a5b4c144 evolution-2.8.2.1.tar.bz2 12921518
diff --git a/mail-client/evolution/files/evolution-2.8.2.1-sig-handlers.patch b/mail-client/evolution/files/evolution-2.8.2.1-sig-handlers.patch
new file mode 100644 (file)
index 0000000..5945f92
--- /dev/null
@@ -0,0 +1,31 @@
+diff --exclude-from=/home/dang/.diffrc -up -ruN evolution-2.8.2.1.orig/mail/em-format-html-display.c evolution-2.8.2.1/mail/em-format-html-display.c
+--- evolution-2.8.2.1.orig/mail/em-format-html-display.c       2006-10-16 08:38:58.000000000 -0400
++++ evolution-2.8.2.1/mail/em-format-html-display.c    2007-01-29 12:48:30.000000000 -0500
+@@ -181,6 +181,7 @@ struct _attach_puri {
+       int fit_width;
+       int fit_height;
+       GtkImage *image;
++      GtkWidget *event_box;
+       /* Signed / Encrypted */
+         camel_cipher_validity_sign_t sign;
+@@ -1689,6 +1690,11 @@ efhd_image_unallocate (struct _EMFormatP
+ {
+       struct _attach_puri *info = (struct _attach_puri *) puri;
+       g_signal_handlers_disconnect_by_func(info->html, efhd_image_resized, info);
++
++      g_signal_handlers_disconnect_by_func(info->event_box, efhd_image_popup, info);
++      g_signal_handlers_disconnect_by_func(info->event_box, efhd_change_cursor, info);
++      g_signal_handlers_disconnect_by_func(info->event_box, efhd_attachment_popup_menu, info);
++      g_signal_handlers_disconnect_by_func(info->event_box, efhd_image_fit_width, info);
+ }
+ static gboolean
+@@ -1721,6 +1727,7 @@ efhd_attachment_image(EMFormatHTML *efh,
+       }
+       box = gtk_event_box_new();
++      info->event_box = box;
+       gtk_container_add((GtkContainer *)box, (GtkWidget *)info->image);
+       gtk_widget_show_all(box);
+       gtk_container_add((GtkContainer *)eb, box);