Blob Blame History Raw
diff -up evolution-data-server-3.12.11/camel/providers/local/camel-maildir-store.c.camel-maildir-migration evolution-data-server-3.12.11/camel/providers/local/camel-maildir-store.c
--- evolution-data-server-3.12.11/camel/providers/local/camel-maildir-store.c.camel-maildir-migration	2015-02-06 12:42:25.000000000 +0100
+++ evolution-data-server-3.12.11/camel/providers/local/camel-maildir-store.c	2015-06-01 13:03:03.912521771 +0200
@@ -202,11 +202,27 @@ maildir_store_get_folder_sync (CamelStor
 	CamelLocalSettings *local_settings;
 	CamelSettings *settings;
 	CamelService *service;
+	CamelMaildirStore *maildir_store;
 	gchar *name, *tmp, *cur, *new, *dir_name;
 	gchar *path;
 	struct stat st;
 	CamelFolder *folder = NULL;
 
+	g_return_val_if_fail (CAMEL_IS_MAILDIR_STORE (store), NULL);
+
+	maildir_store = CAMEL_MAILDIR_STORE (store);
+
+	if (!maildir_store->priv->already_migrated &&
+	    maildir_store->priv->can_escape_dots) {
+		CamelFolderInfo *folder_info;
+
+		/* Not interested in any errors here, this is to invoke folder
+		   content migration only. */
+		folder_info = camel_store_get_folder_info_sync (store, NULL, CAMEL_STORE_FOLDER_INFO_RECURSIVE, cancellable, NULL);
+		if (folder_info)
+			camel_folder_info_free (folder_info);
+	}
+
 	service = CAMEL_SERVICE (store);
 
 	settings = camel_service_ref_settings (service);