--- evolution-2.11.3/mail/em-migrate.c.firstmail 2007-06-03 17:08:08.000000000 +0200 +++ evolution-2.11.3/mail/em-migrate.c 2007-06-04 20:01:15.000000000 +0200 @@ -71,7 +71,7 @@ #include "em-utils.h" #include "em-migrate.h" -#define d(x) x +#define d(x) #ifndef G_OS_WIN32 @@ -1539,7 +1539,8 @@ dlen = destpath->len; while ((dent = readdir (dir))) { - if (!strcmp (dent->d_name, ".") || !strcmp (dent->d_name, "..")) + char *src; + if (!strcmp(dent->d_name, ".") || !strcmp(dent->d_name, "..") || !strcmp(dent->d_name, "Inbox")) continue; g_string_truncate (srcpath, slen); @@ -2646,7 +2647,9 @@ { GDir *dir; const char *d; - char *local = NULL, *base; + struct stat st; + const GList *l; + char *local = NULL, *base, *dest; const gchar * const *language_names; /* special-case - this means brand new install of evolution */ @@ -2691,6 +2694,27 @@ } g_free(local); + + /* e.g. try en-AU then en, etc */ + for (l = gnome_i18n_get_language_list("LC_MESSAGES"); + l != NULL; + l = g_list_next(l)) { + local = g_strconcat (EVOLUTION_DATADIR "/mdk/mail/html/mail-", (char *)l->data, NULL); + if (stat(local, &st) == 0) + goto gotlocalmdk; + + g_free(local); + } + + local = g_strdup(EVOLUTION_DATADIR "/mdk/mail/html/mail-en"); + +gotlocalmdk: + dest = g_build_filename(base, "Inbox", NULL); + + cp(local, dest, FALSE, CP_UNIQUE); + g_free(dest); + + g_free(local); g_free(base); return 0;