From 34f19df86518cd0d8f6bb5437ba989997564f20d Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 26 Sep 2011 12:13:20 +0200 Subject: Bug #656473 - Store server folder cache in user's cache directory --- mail/e-mail-session.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'mail/e-mail-session.c') diff --git a/mail/e-mail-session.c b/mail/e-mail-session.c index 7addaece4a..7ed8720e75 100644 --- a/mail/e-mail-session.c +++ b/mail/e-mail-session.c @@ -101,6 +101,7 @@ enum { }; static gchar *mail_data_dir; +static gchar *mail_cache_dir; static gchar *mail_config_dir; #if 0 @@ -1220,12 +1221,16 @@ EMailSession * e_mail_session_new (void) { const gchar *user_data_dir; + const gchar *user_cache_dir; user_data_dir = mail_session_get_data_dir (); + user_cache_dir = mail_session_get_cache_dir (); return g_object_new ( E_TYPE_MAIL_SESSION, - "user-data-dir", user_data_dir, NULL); + "user-data-dir", user_data_dir, + "user-cache-dir", user_cache_dir, + NULL); } MailFolderCache * @@ -1600,6 +1605,16 @@ mail_session_get_data_dir (void) return mail_data_dir; } +const gchar * +mail_session_get_cache_dir (void) +{ + if (G_UNLIKELY (mail_cache_dir == NULL)) + mail_cache_dir = g_build_filename ( + e_get_user_cache_dir (), "mail", NULL); + + return mail_cache_dir; +} + const gchar * mail_session_get_config_dir (void) { -- cgit v1.2.3