aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authormarcus <marcus@FreeBSD.org>2007-06-28 12:00:39 +0800
committermarcus <marcus@FreeBSD.org>2007-06-28 12:00:39 +0800
commita16aa02a17ee09380224ee908faa0da7d6fa3200 (patch)
treeb30714d8d37c03db474e3c48851bf3add3e8121f /mail
parentf800f19c01330f3d1f8caac63026f25def315450 (diff)
downloadfreebsd-ports-gnome-a16aa02a17ee09380224ee908faa0da7d6fa3200.tar.gz
freebsd-ports-gnome-a16aa02a17ee09380224ee908faa0da7d6fa3200.tar.zst
freebsd-ports-gnome-a16aa02a17ee09380224ee908faa0da7d6fa3200.zip
Fix maildir support.
Submitted by: Yuri Pankov <yuri@darklight.org.ru> Obtained from: http://bugzilla.gnome.org/show_bug.cgi?id=352346
Diffstat (limited to 'mail')
-rw-r--r--mail/evolution/Makefile1
-rw-r--r--mail/evolution/files/patch-fix-maildir111
2 files changed, 112 insertions, 0 deletions
diff --git a/mail/evolution/Makefile b/mail/evolution/Makefile
index 6a842312da46..42fce3dc0e53 100644
--- a/mail/evolution/Makefile
+++ b/mail/evolution/Makefile
@@ -8,6 +8,7 @@
PORTNAME= evolution
PORTVERSION= 2.10.2
+PORTREVISION= 1
CATEGORIES= mail gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/${PORTNAME}/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/}
diff --git a/mail/evolution/files/patch-fix-maildir b/mail/evolution/files/patch-fix-maildir
new file mode 100644
index 000000000000..6bf3fe7468cd
--- /dev/null
+++ b/mail/evolution/files/patch-fix-maildir
@@ -0,0 +1,111 @@
+Index: mail/ChangeLog
+===================================================================
+--- mail/ChangeLog (revision 33704)
++++ mail/ChangeLog (working copy)
+@@ -1,3 +1,11 @@
++2007-06-18 Milan Crha <mcrha@redhat.com>
++
++ ** Fix for bug #352346
++
++ * em-migrate.c (em_update_accounts_2_11), (em_migrate):
++ Added function to change "spool" to "spooldir" for those
++ spools which points on directories.
++
+ 2007-06-18 Srinivasa Ragavan <sragavan@novell.com>
+
+ ** Fix for bug #448223 from Gilles Dartiguelongue
+Index: mail/mail-config.glade
+===================================================================
+--- mail/mail-config.glade (revision 33704)
++++ mail/mail-config.glade (working copy)
+@@ -1354,7 +1354,6 @@
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+- <property name="x_options">fill</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+Index: mail/em-account-editor.c
+===================================================================
+--- mail/em-account-editor.c (revision 33704)
++++ mail/em-account-editor.c (working copy)
+@@ -1665,9 +1665,19 @@
+ }
+ if (url->user)
+ gtk_entry_set_text(service->username, url->user);
+- if (service->pathentry && url->path)
+- gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (service->pathentry), url->path);
++ if (service->pathentry) {
++ GtkFileChooserAction action = GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER;
+
++ if (service->provider && (service->provider->url_flags & CAMEL_URL_NEED_PATH_DIR) == 0)
++ action = GTK_FILE_CHOOSER_ACTION_OPEN;
++
++ if (action != gtk_file_chooser_get_action (GTK_FILE_CHOOSER (service->pathentry)))
++ gtk_file_chooser_set_action (GTK_FILE_CHOOSER (service->pathentry), action);
++
++ if (url->path)
++ gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (service->pathentry), url->path);
++ }
++
+ tmp = camel_url_get_param(url, "use_ssl");
+ if (tmp == NULL)
+ tmp = "never";
+Index: mail/em-migrate.c
+===================================================================
+--- mail/em-migrate.c (revision 33704)
++++ mail/em-migrate.c (working copy)
+@@ -2639,6 +2639,41 @@
+ return 0;
+ }
+
++static void
++em_update_accounts_2_11 (void)
++{
++ EAccountList *accounts;
++ EIterator *iter;
++ gboolean changed = FALSE;
++
++ if (!(accounts = mail_config_get_accounts ()))
++ return;
++
++ iter = e_list_get_iterator ((EList *) accounts);
++ while (e_iterator_is_valid (iter)) {
++ EAccount *account = (EAccount *) e_iterator_get (iter);
++
++ if (g_str_has_prefix (account->source->url, "spool://")) {
++ struct stat st;
++
++ if (stat(account->source->url + 8, &st) != -1 && S_ISDIR(st.st_mode)) {
++ char *str = g_strdup_printf ("spooldir://%s", account->source->url + 8);
++
++ g_free (account->source->url);
++ account->source->url = str;
++ changed = TRUE;
++ }
++ }
++
++ e_iterator_next (iter);
++ }
++
++ g_object_unref (iter);
++
++ if (changed)
++ mail_config_save_accounts ();
++}
++
+ #endif
+
+ static int
+@@ -2777,6 +2812,10 @@
+
+ g_free (path);
+ }
++
++ if (major < 2 || (major == 2 && minor <= 11)) {
++ em_update_accounts_2_11 ();
++ }
+ #endif /* !G_OS_WIN32 */
+ return 0;
+ }