diff options
Diffstat (limited to 'extra/beagle/beagle-0.3.9-gmime24.patch')
-rw-r--r-- | extra/beagle/beagle-0.3.9-gmime24.patch | 703 |
1 files changed, 703 insertions, 0 deletions
diff --git a/extra/beagle/beagle-0.3.9-gmime24.patch b/extra/beagle/beagle-0.3.9-gmime24.patch new file mode 100644 index 000000000..7d943dabf --- /dev/null +++ b/extra/beagle/beagle-0.3.9-gmime24.patch @@ -0,0 +1,703 @@ +diff -upNr beagle-0.3.9.orign/beagled/EvolutionMailQueryable/EvolutionMailIndexableGenerator.cs beagle-0.3.9/beagled/EvolutionMailQueryable/EvolutionMailIndexableGenerator.cs +--- beagle-0.3.9.orign/beagled/EvolutionMailQueryable/EvolutionMailIndexableGenerator.cs 2008-04-25 20:17:04.000000000 +0200 ++++ beagle-0.3.9/beagled/EvolutionMailQueryable/EvolutionMailIndexableGenerator.cs 2009-01-28 12:33:17.000000000 +0100 +@@ -333,28 +333,46 @@ namespace Beagle.Daemon.EvolutionMailQue + indexable.AddProperty (Property.NewUnsearched ("fixme:folder", this.folder_name)); + + GMime.InternetAddressList addrs; +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.To); +- foreach (GMime.InternetAddress ia in addrs) { +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent") { ++ addrs = message.GetRecipients (GMime.RecipientType.To); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.Cc); +- foreach (GMime.InternetAddress ia in addrs) { +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent") { ++ addrs = message.GetRecipients (GMime.RecipientType.Cc); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (message.Sender)); +- foreach (GMime.InternetAddress ia in addrs) { +- if (this.folder_name != "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", ia.Addr)); ++ ++ if (this.folder_name != "Sent") { ++ addrs = GMime.InternetAddressList.Parse (message.Sender); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- ++ + if (this.folder_name == "Sent") + indexable.AddProperty (Property.NewFlag ("fixme:isSent")); + +@@ -750,48 +768,54 @@ namespace Beagle.Daemon.EvolutionMailQue + } + + GMime.InternetAddressList addrs; +- addrs = GMime.InternetAddressList.ParseString (messageInfo.to); ++ addrs = GMime.InternetAddressList.Parse (messageInfo.to); + foreach (GMime.InternetAddress ia in addrs) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ + if (!have_content) { + indexable.AddProperty (Property.NewUnsearched ("fixme:to", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.New ("fixme:to_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.New ("fixme:to_address", mailbox.Address)); ++ + indexable.AddProperty (Property.New ("fixme:to_name", ia.Name)); + } +- +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent" && ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (messageInfo.cc); ++ addrs = GMime.InternetAddressList.Parse (messageInfo.cc); + foreach (GMime.InternetAddress ia in addrs) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ + if (!have_content) { + indexable.AddProperty (Property.NewUnsearched ("fixme:cc", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.New ("fixme:cc_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.New ("fixme:cc_address", mailbox.Address)); ++ + indexable.AddProperty (Property.New ("fixme:cc_name", ia.Name)); + } +- +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent" && ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (messageInfo.from); ++ addrs = GMime.InternetAddressList.Parse (messageInfo.from); + foreach (GMime.InternetAddress ia in addrs) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ + if (!have_content) { + indexable.AddProperty (Property.NewUnsearched ("fixme:from", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.New ("fixme:from_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.New ("fixme:from_address", mailbox.Address)); ++ + indexable.AddProperty (Property.New ("fixme:from_name", ia.Name)); + } + +- if (this.folder_name != "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", ia.Addr)); ++ if (this.folder_name != "Sent" && ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", mailbox.Address)); + } + addrs.Dispose (); + +diff -upNr beagle-0.3.9.orign/beagled/GoogleBackends/GMailSearchDriver.cs beagle-0.3.9/beagled/GoogleBackends/GMailSearchDriver.cs +--- beagle-0.3.9.orign/beagled/GoogleBackends/GMailSearchDriver.cs 2008-04-25 21:26:19.000000000 +0200 ++++ beagle-0.3.9/beagled/GoogleBackends/GMailSearchDriver.cs 2009-01-28 12:33:17.000000000 +0100 +@@ -322,38 +322,47 @@ namespace Beagle.Daemon.GoogleBackend { + hit.AddProperty (Property.NewDate ("fixme:date", message.Date.ToUniversalTime ())); + + GMime.InternetAddressList addrs; +- addrs = message.GetRecipients (GMime.Message.RecipientType.To); ++ addrs = message.GetRecipients (GMime.RecipientType.To); + foreach (GMime.InternetAddress ia in addrs) { + hit.AddProperty (Property.NewUnsearched ("fixme:to", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- hit.AddProperty (Property.New ("fixme:to_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ hit.AddProperty (Property.New ("fixme:to_address", mailbox.Address)); ++ } ++ + hit.AddProperty (Property.New ("fixme:to_name", ia.Name)); + } + addrs.Dispose (); + +- addrs = message.GetRecipients (GMime.Message.RecipientType.Cc); ++ addrs = message.GetRecipients (GMime.RecipientType.Cc); + foreach (GMime.InternetAddress ia in addrs) { + hit.AddProperty (Property.NewUnsearched ("fixme:cc", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- hit.AddProperty (Property.New ("fixme:cc_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ hit.AddProperty (Property.New ("fixme:cc_address", mailbox.Address)); ++ } ++ + hit.AddProperty (Property.New ("fixme:cc_name", ia.Name)); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (message.Sender)); ++ addrs = GMime.InternetAddressList.Parse (message.Sender); + foreach (GMime.InternetAddress ia in addrs) { + hit.AddProperty (Property.NewUnsearched ("fixme:from", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- hit.AddProperty (Property.New ("fixme:from_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ hit.AddProperty (Property.New ("fixme:from_address", mailbox.Address)); ++ } ++ + hit.AddProperty (Property.New ("fixme:from_name", ia.Name)); + } + addrs.Dispose (); + + foreach (GMime.References refs in message.References) +- hit.AddProperty (Property.NewUnsearched ("fixme:reference", refs.Msgid)); ++ hit.AddProperty (Property.NewUnsearched ("fixme:reference", refs.MessageId)); + + string list_id = message.GetHeader ("List-Id"); + if (list_id != null) +diff -upNr beagle-0.3.9.orign/beagled/KMailQueryable/KMailIndexer.cs beagle-0.3.9/beagled/KMailQueryable/KMailIndexer.cs +--- beagle-0.3.9.orign/beagled/KMailQueryable/KMailIndexer.cs 2008-02-10 21:24:19.000000000 +0100 ++++ beagle-0.3.9/beagled/KMailQueryable/KMailIndexer.cs 2009-01-28 12:33:17.000000000 +0100 +@@ -407,28 +407,46 @@ namespace Beagle.Daemon.KMailQueryable { + indexable.AddProperty (Property.NewUnsearched ("fixme:folder", folder_name)); + + GMime.InternetAddressList addrs; +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.To); +- foreach (GMime.InternetAddress ia in addrs) { +- if (folder_name == Queryable.SentMailFolderName && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", ia.Addr)); +- } +- addrs.Dispose (); +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.Cc); +- foreach (GMime.InternetAddress ia in addrs) { +- if (folder_name == Queryable.SentMailFolderName && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", ia.Addr)); +- } +- addrs.Dispose (); +- +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (message.Sender)); +- foreach (GMime.InternetAddress ia in addrs) { +- if (folder_name != Queryable.SentMailFolderName && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewKeyword ("fixme:gotFrom", ia.Addr)); ++ ++ if (folder_name == Queryable.SentMailFolderName) { ++ addrs = message.GetRecipients (GMime.RecipientType.To); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- ++ ++ if (folder_name == Queryable.SentMailFolderName) { ++ addrs = message.GetRecipients (GMime.RecipientType.Cc); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); ++ } ++ ++ if (folder_name != Queryable.SentMailFolderName) { ++ addrs = GMime.InternetAddressList.Parse (message.Sender); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewKeyword ("fixme:gotFrom", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); ++ } ++ + if (folder_name == Queryable.SentMailFolderName) + indexable.AddProperty (Property.NewFlag ("fixme:isSent")); + else { +diff -upNr beagle-0.3.9.orign/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs beagle-0.3.9/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs +--- beagle-0.3.9.orign/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs 2008-07-18 16:27:59.000000000 +0200 ++++ beagle-0.3.9/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs 2009-01-28 12:33:17.000000000 +0100 +@@ -367,9 +367,14 @@ namespace Beagle.Daemon.ThunderbirdQuery + message.Subject = Mime.HeaderDecodeText (GetText (document, "Subject")); + message.Sender = Mime.HeaderDecodePhrase (GetText (document, "Author")); + message.MessageId = GetText (document, "MessageId"); +- message.SetDate (DateTimeUtil.UnixToDateTimeUtc (Convert.ToInt64 (GetText (document, "Date"))), 0); +- message.AddRecipientsFromString ("To", Mime.HeaderDecodePhrase (GetText (document, "Recipients"))); +- ++ message.Date = DateTimeUtil.UnixToDateTimeUtc (Convert.ToInt64 (GetText (document, "Date"))); ++ ++ string str = GetText (document, "Recipients"); ++ GMime.InternetAddressList recipients = GMime.InternetAddressList.Parse (str); ++ foreach (GMime.InternetAddress ia in recipients) ++ message.To.Add (ia); ++ recipients.Dispose (); ++ + return message; + } + +@@ -434,7 +439,7 @@ namespace Beagle.Daemon.ThunderbirdQuery + + // We _know_ that the stream comes from a StreamReader, which uses UTF8 by + // default. So we use that here when parsing our string. +- return (str != null ? Encoding.UTF8.GetString (str, 0, pos) : string.Empty); ++ return (str != null ? System.Text.Encoding.UTF8.GetString (str, 0, pos) : string.Empty); + } + + // This spell "charset=" +@@ -462,7 +467,7 @@ namespace Beagle.Daemon.ThunderbirdQuery + // instead of UTF-8 in some cases and that will really mess things up. + byte[] buffer = null; + int c, header_length = 0, newlines = 0, charset_pos = 0; +- Encoding enc = Encoding.UTF8; ++ System.Text.Encoding enc = System.Text.Encoding.UTF8; + try { + do { + c = stream.BaseStream.ReadByte (); +@@ -491,7 +496,7 @@ namespace Beagle.Daemon.ThunderbirdQuery + stream.BaseStream.Read (buffer, 0, buffer.Length); + + // We need to use correct encoding +- enc = Encoding.GetEncoding (encoding_str); ++ enc = System.Text.Encoding.GetEncoding (encoding_str); + } catch { + } finally { + stream.Close (); +diff -upNr beagle-0.3.9.orign/configure beagle-0.3.9/configure +--- beagle-0.3.9.orign/configure 2008-07-19 13:20:36.000000000 +0200 ++++ beagle-0.3.9/configure 2009-01-28 12:35:43.000000000 +0100 +@@ -2791,7 +2791,7 @@ MONODOC_REQUIRED=1.2.4 + NDESK_DBUS_REQUIRED=0.5.2 + NDESK_DBUS_GLIB_REQUIRED=0.3.0 + GTK_SHARP_REQUIRED=2.10.0 +-GMIME_SHARP_REQUIRED=2.2.0 ++GMIME_SHARP_REQUIRED=2.4.0 + EVOLUTION_SHARP_REQUIRED=0.13.3 + GSF_SHARP_REQUIRED=0.6 + GTK_REQUIRED=2.10.0 +@@ -25660,7 +25660,7 @@ if test -n "$PKG_CONFIG"; then + glade-sharp-2.0 >= \$GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= \$GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= \$GTK_SHARP_REQUIRED +- gmime-sharp >= \$GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= \$GMIME_SHARP_REQUIRED + \"") >&5 + ($PKG_CONFIG --exists --print-errors " + gtk-sharp-2.0 >= $GTK_SHARP_REQUIRED +@@ -25668,7 +25668,7 @@ if test -n "$PKG_CONFIG"; then + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + ") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 +@@ -25679,7 +25679,7 @@ if test -n "$PKG_CONFIG"; then + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + " 2>/dev/null` + else + pkg_failed=yes +@@ -25699,7 +25699,7 @@ if test -n "$PKG_CONFIG"; then + glade-sharp-2.0 >= \$GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= \$GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= \$GTK_SHARP_REQUIRED +- gmime-sharp >= \$GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= \$GMIME_SHARP_REQUIRED + \"") >&5 + ($PKG_CONFIG --exists --print-errors " + gtk-sharp-2.0 >= $GTK_SHARP_REQUIRED +@@ -25707,7 +25707,7 @@ if test -n "$PKG_CONFIG"; then + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + ") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 +@@ -25718,7 +25718,7 @@ if test -n "$PKG_CONFIG"; then + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + " 2>/dev/null` + else + pkg_failed=yes +@@ -25744,7 +25744,7 @@ fi + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + "` + else + BEAGLE_UI_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors " +@@ -25753,7 +25753,7 @@ fi + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + "` + fi + # Put the nasty error message in config.log where it belongs +@@ -25765,7 +25765,7 @@ fi + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + ) were not met: + + $BEAGLE_UI_PKG_ERRORS +@@ -25783,7 +25783,7 @@ echo "$as_me: error: Package requirement + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + ) were not met: + + $BEAGLE_UI_PKG_ERRORS +@@ -26167,18 +26167,18 @@ if test -n "$PKG_CONFIG"; then + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"evolution-sharp >= \$EVOLUTION_SHARP_REQUIRED \\ + gconf-sharp-2.0 >= \$GTK_SHARP_REQUIRED \\ + glib-sharp-2.0 >= \$GTK_SHARP_REQUIRED +- gmime-sharp >= \$GMIME_SHARP_REQUIRED\"") >&5 ++ gmime-sharp-2.4 >= \$GMIME_SHARP_REQUIRED\"") >&5 + ($PKG_CONFIG --exists --print-errors "evolution-sharp >= $EVOLUTION_SHARP_REQUIRED \ + gconf-sharp-2.0 >= $GTK_SHARP_REQUIRED \ + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED") 2>&5 ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + pkg_cv_EVO_CFLAGS=`$PKG_CONFIG --cflags "evolution-sharp >= $EVOLUTION_SHARP_REQUIRED \ + gconf-sharp-2.0 >= $GTK_SHARP_REQUIRED \ + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED" 2>/dev/null` ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED" 2>/dev/null` + else + pkg_failed=yes + fi +@@ -26194,18 +26194,18 @@ if test -n "$PKG_CONFIG"; then + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"evolution-sharp >= \$EVOLUTION_SHARP_REQUIRED \\ + gconf-sharp-2.0 >= \$GTK_SHARP_REQUIRED \\ + glib-sharp-2.0 >= \$GTK_SHARP_REQUIRED +- gmime-sharp >= \$GMIME_SHARP_REQUIRED\"") >&5 ++ gmime-sharp-2.4 >= \$GMIME_SHARP_REQUIRED\"") >&5 + ($PKG_CONFIG --exists --print-errors "evolution-sharp >= $EVOLUTION_SHARP_REQUIRED \ + gconf-sharp-2.0 >= $GTK_SHARP_REQUIRED \ + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED") 2>&5 ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + pkg_cv_EVO_LIBS=`$PKG_CONFIG --libs "evolution-sharp >= $EVOLUTION_SHARP_REQUIRED \ + gconf-sharp-2.0 >= $GTK_SHARP_REQUIRED \ + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED" 2>/dev/null` ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED" 2>/dev/null` + else + pkg_failed=yes + fi +@@ -26227,12 +26227,12 @@ fi + EVO_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "evolution-sharp >= $EVOLUTION_SHARP_REQUIRED \ + gconf-sharp-2.0 >= $GTK_SHARP_REQUIRED \ + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED"` ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED"` + else + EVO_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "evolution-sharp >= $EVOLUTION_SHARP_REQUIRED \ + gconf-sharp-2.0 >= $GTK_SHARP_REQUIRED \ + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED"` ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED"` + fi + # Put the nasty error message in config.log where it belongs + echo "$EVO_PKG_ERRORS" >&5 +@@ -26781,12 +26781,12 @@ if test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" + shared-mime-info +- gmime-sharp >= \$GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= \$GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= \$GTK_SHARP_REQUIRED + \"") >&5 + ($PKG_CONFIG --exists --print-errors " + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + ") 2>&5 + ac_status=$? +@@ -26794,7 +26794,7 @@ if test -n "$PKG_CONFIG"; then + (exit $ac_status); }; then + pkg_cv_BEAGLED_CFLAGS=`$PKG_CONFIG --cflags " + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + " 2>/dev/null` + else +@@ -26811,12 +26811,12 @@ if test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" + shared-mime-info +- gmime-sharp >= \$GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= \$GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= \$GTK_SHARP_REQUIRED + \"") >&5 + ($PKG_CONFIG --exists --print-errors " + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + ") 2>&5 + ac_status=$? +@@ -26824,7 +26824,7 @@ if test -n "$PKG_CONFIG"; then + (exit $ac_status); }; then + pkg_cv_BEAGLED_LIBS=`$PKG_CONFIG --libs " + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + " 2>/dev/null` + else +@@ -26847,13 +26847,13 @@ fi + if test $_pkg_short_errors_supported = yes; then + BEAGLED_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors " + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + "` + else + BEAGLED_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors " + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + "` + fi +@@ -26862,7 +26862,7 @@ fi + + { { echo "$as_me:$LINENO: error: Package requirements ( + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + ) were not met: + +@@ -26877,7 +26877,7 @@ See the pkg-config man page for more det + " >&5 + echo "$as_me: error: Package requirements ( + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + ) were not met: + +@@ -26924,7 +26924,7 @@ BEAGLED_LIBS="$BEAGLED_LIBS $GSF_SHARP_L + + + GSF_SHARP_PREFIX=`$PKG_CONFIG --variable=prefix gsf-sharp` +-GMIME_SHARP_PREFIX=`$PKG_CONFIG --variable=prefix gmime-sharp` ++GMIME_SHARP_PREFIX=`$PKG_CONFIG --variable=prefix gmime-sharp-2.4` + + + # Check whether --enable-epiphany-extension was given. +diff -upNr beagle-0.3.9.orign/Filters/FilterMail.cs beagle-0.3.9/Filters/FilterMail.cs +--- beagle-0.3.9.orign/Filters/FilterMail.cs 2008-06-12 02:20:07.000000000 +0200 ++++ beagle-0.3.9/Filters/FilterMail.cs 2009-01-28 12:33:17.000000000 +0100 +@@ -126,7 +126,7 @@ namespace Beagle.Filters { + + // Messages that are multipart/alternative shouldn't be considered as having + // attachments. Unless of course they do. +- if (mime_part is GMime.Multipart && mime_part.ContentType.Subtype.ToLower () != "alternative") ++ if (mime_part is GMime.Multipart && mime_part.ContentType.MediaSubtype.ToLower () != "alternative") + return true; + + return false; +@@ -140,34 +140,43 @@ namespace Beagle.Filters { + AddProperty (Property.NewDate ("fixme:date", message.Date.ToUniversalTime ())); + + GMime.InternetAddressList addrs; +- addrs = this.message.GetRecipients (GMime.Message.RecipientType.To); ++ addrs = this.message.GetRecipients (GMime.RecipientType.To); + foreach (GMime.InternetAddress ia in addrs) { + AddProperty (Property.NewUnsearched ("fixme:to", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- AddProperty (Property.New ("fixme:to_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ AddProperty (Property.New ("fixme:to_address", mailbox.Address)); ++ } ++ + AddProperty (Property.New ("fixme:to_name", ia.Name)); + AddEmailLink (ia); + } + addrs.Dispose (); + +- addrs = this.message.GetRecipients (GMime.Message.RecipientType.Cc); ++ addrs = this.message.GetRecipients (GMime.RecipientType.Cc); + foreach (GMime.InternetAddress ia in addrs) { + AddProperty (Property.NewUnsearched ("fixme:cc", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- AddProperty (Property.New ("fixme:cc_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ AddProperty (Property.New ("fixme:cc_address", mailbox.Address)); ++ } ++ + AddProperty (Property.New ("fixme:cc_name", ia.Name)); + AddEmailLink (ia); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (this.message.Sender)); ++ addrs = GMime.InternetAddressList.Parse (this.message.Sender); + foreach (GMime.InternetAddress ia in addrs) { + AddProperty (Property.NewUnsearched ("fixme:from", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- AddProperty (Property.New ("fixme:from_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ AddProperty (Property.New ("fixme:from_address", mailbox.Address)); ++ } ++ + AddProperty (Property.New ("fixme:from_name", ia.Name)); + AddEmailLink (ia); + } +@@ -184,7 +193,7 @@ namespace Beagle.Filters { + AddProperty (Property.NewUnsearched ("fixme:msgid", GMime.Utils.DecodeMessageId (msgid))); + + foreach (GMime.References refs in this.message.References) +- AddProperty (Property.NewUnsearched ("fixme:reference", refs.Msgid)); ++ AddProperty (Property.NewUnsearched ("fixme:reference", refs.MessageId)); + + string list_id = this.message.GetHeader ("List-Id"); + if (list_id != null) +@@ -345,16 +354,15 @@ namespace Beagle.Filters { + } + } else if (mime_part is GMime.Multipart) { + GMime.Multipart multipart = (GMime.Multipart) mime_part; +- +- int num_parts = multipart.Number; ++ int num_parts = multipart.Count; + + // If the mimetype is multipart/alternative, we only want to index + // one part -- the richest one we can filter. +- if (mime_part.ContentType.Subtype.ToLower () == "alternative") { ++ if (mime_part.ContentType.MediaSubtype.ToLower () == "alternative") { + // The richest formats are at the end, so work from there + // backward. + for (int i = num_parts - 1; i >= 0; i--) { +- GMime.Object subpart = multipart.GetPart (i); ++ GMime.Object subpart = multipart[i]; + + if (IsMimeTypeHandled (subpart.ContentType.ToString ())) { + part = subpart; +@@ -370,7 +378,7 @@ namespace Beagle.Filters { + // the parts, treat them like a bunch of attachments. + if (part == null) { + for (int i = 0; i < num_parts; i++) { +- using (GMime.Object subpart = multipart.GetPart (i)) ++ using (GMime.Object subpart = multipart[i]) + this.OnEachPart (subpart); + } + } +@@ -400,7 +408,7 @@ namespace Beagle.Filters { + } else if (mime_type == "text/html") { + no_child_needed = true; + html_part = true; +- string enc = part.GetContentTypeParameter ("charset"); ++ string enc = part.ContentType.GetParameter ("charset"); + // DataWrapper.Stream is a very limited stream + // and does not allow Seek or Tell + // HtmlFilter requires Stream.Position=0. +@@ -473,7 +481,7 @@ namespace Beagle.Filters { + if (length != -1) + child.AddProperty (Property.NewUnsearched ("fixme:filesize", length)); + +- if (part.ContentType.Type.ToLower () == "text") ++ if (part.ContentType.MediaType.ToLower () == "text") + child.SetTextReader (new StreamReader (stream)); + else + child.SetBinaryStream (stream); |