diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2013-03-25 07:28:50 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2013-03-25 08:06:49 +0800 |
commit | 1723ee09122a8e137e78ed301f2706eefb281adf (patch) | |
tree | 32839933e0894443b4091a63748ddcbce30987a4 /shell/main.c | |
parent | 4a32f924be0343bdf3afae9f14482ab651e8ccf8 (diff) | |
download | gsoc2013-evolution-1723ee09122a8e137e78ed301f2706eefb281adf.tar.gz gsoc2013-evolution-1723ee09122a8e137e78ed301f2706eefb281adf.tar.zst gsoc2013-evolution-1723ee09122a8e137e78ed301f2706eefb281adf.zip |
Fix mbox-to-Maildir conversion... again.
Commit ee5671fc fixed mbox-to-Maildir conversion for users upgrading
from Evolution 2.32, who had already migrated to XDG Base Directories.
But turns out, mbox-to-Maildir conversion was still broken for users
coming from Evolution 2.30 or earlier because the logic to move files
into XDG Base Directories was running *after* the conversion routine.
So the conversion routine found nothing to convert, and users were
left with a broken "On This Computer" mail store.
This commit runs the XDG Base Directory migration first on startup,
followed by the mbox-to-Maildir conversion.
Diffstat (limited to 'shell/main.c')
-rw-r--r-- | shell/main.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/shell/main.c b/shell/main.c index bd7997a3f7..e4570f0668 100644 --- a/shell/main.c +++ b/shell/main.c @@ -109,6 +109,7 @@ static gchar **remaining_args; /* Forward declarations */ void e_convert_local_mail (EShell *shell); +void e_migrate_base_dirs (EShell *shell); static void categories_icon_theme_hack (void) @@ -665,7 +666,15 @@ main (gint argc, * This has to be done before we load modules because some of the * EShellBackends immediately add GMainContext sources that would * otherwise get dispatched during gtk_dialog_run(), and we don't - * want them dispatched until after the conversion is complete. */ + * want them dispatched until after the conversion is complete. + * + * Addendum: We need to perform the XDG Base Directory migration + * before converting the local mail store, because the + * conversion is triggered by checking for certain key + * files and directories under XDG_DATA_HOME. Without + * this the mail conversion will not trigger for users + * upgrading from Evolution 2.30 or older. */ + e_migrate_base_dirs (shell); e_convert_local_mail (shell); e_shell_load_modules (shell); |