diff options
author | Bharath Acharya <abharath@novell.com> | 2008-10-16 13:41:39 +0800 |
---|---|---|
committer | Bharath Acharya <abharath@src.gnome.org> | 2008-10-16 13:41:39 +0800 |
commit | e5e6107537c6689d2a02a1ed9365ea0a5c84c210 (patch) | |
tree | a601f7743c7f5327402d60b7b8b028739f5795ac | |
parent | 808c62577c212151fe8f088a51fa88f0136cd922 (diff) | |
download | gsoc2013-evolution-e5e6107537c6689d2a02a1ed9365ea0a5c84c210.tar.gz gsoc2013-evolution-e5e6107537c6689d2a02a1ed9365ea0a5c84c210.tar.zst gsoc2013-evolution-e5e6107537c6689d2a02a1ed9365ea0a5c84c210.zip |
** Fix for bug #556284
2008-10-15 Bharath Acharya <abharath@novell.com>
** Fix for bug #556284
* templates.c: (reply_with_template),
* (org_gnome_templates_popup),
(action_template_cb): Fixes for fetching the store using
mail_component_peek_local_store. Fixes the right-click crash
issues caused on OS_WIN32 by Templates plugin.
svn path=/trunk/; revision=36620
-rw-r--r-- | plugins/templates/ChangeLog | 9 | ||||
-rw-r--r-- | plugins/templates/templates.c | 42 |
2 files changed, 15 insertions, 36 deletions
diff --git a/plugins/templates/ChangeLog b/plugins/templates/ChangeLog index f0fc942dc0..789f58de0b 100644 --- a/plugins/templates/ChangeLog +++ b/plugins/templates/ChangeLog @@ -1,3 +1,12 @@ +2008-10-15 Bharath Acharya <abharath@novell.com> + + ** Fix for bug #556284 + + * templates.c: (reply_with_template), (org_gnome_templates_popup), + (action_template_cb): Fixes for fetching the store using + mail_component_peek_local_store. Fixes the right-click crash issues + caused on OS_WIN32 by Templates plugin. + 2008-09-15 Sankar P <psankar@novell.com> License Changes diff --git a/plugins/templates/templates.c b/plugins/templates/templates.c index 3c79bbcd01..8996c7f8c1 100644 --- a/plugins/templates/templates.c +++ b/plugins/templates/templates.c @@ -31,15 +31,13 @@ #include <e-util/e-config.h> #include <camel/camel-url.h> -#include <camel/camel-folder.h> -#include <camel/camel-mime-message.h> #include <camel/camel-multipart.h> #include <camel/camel-stream-mem.h> -#include <camel/camel-store.h> #include <mail/em-composer-utils.h> #include <mail/em-popup.h> #include <mail/mail-session.h> +#include <mail/mail-component.h> #include <mail/mail-ops.h> #include <e-util/e-error.h> #include <e-util/e-plugin.h> @@ -502,21 +500,13 @@ static void reply_with_template (EPopup *ep, EPopupItem *item, void *data) { CamelMimeMessage *new, *template, *reply_to; - CamelStore *store; CamelFolder *templates_folder; struct _camel_header_raw *header; UserData *userdata = item->user_data; - char *cont, *basedir, *url; + char *cont; /* We get the templates folder and all the uids of the messages in there */ - basedir = g_build_filename (g_get_home_dir (), ".evolution", "mail", "local", NULL); - url = g_strdup_printf ("mbox://%s", basedir); - g_free (basedir); - - store = (CamelStore *) camel_session_get_service (session, url, CAMEL_PROVIDER_STORE, NULL); - g_free (url); - - templates_folder = camel_store_get_folder (store, _("Templates"), CAMEL_STORE_FOLDER_CREATE, NULL); + templates_folder = mail_component_get_folder(NULL, MAIL_COMPONENT_FOLDER_TEMPLATES); /* Get from the currently selected folder, the currently selected message */ reply_to = camel_folder_get_message (userdata->t->folder, @@ -672,21 +662,13 @@ org_gnome_templates_popup (EPlugin *ep, EMPopupTargetSelect *t) CamelFolder *templates_folder; CamelFolderInfo *templates_info; CamelStore *store; - char *basedir; - char *url; GSList *list = NULL; /* We get the templates folder and all the uids of the messages in there */ - basedir = g_build_filename (g_get_home_dir (), ".evolution", "mail", "local", NULL); - url = g_strdup_printf ("mbox://%s", basedir); - - g_free (basedir); - - store = (CamelStore *) camel_session_get_service (session, url, CAMEL_PROVIDER_STORE, NULL); - g_free (url); + store = mail_component_peek_local_store (NULL); - templates_folder = camel_store_get_folder (store, _("Templates"), CAMEL_STORE_FOLDER_CREATE, NULL); + templates_folder = mail_component_get_folder(NULL, MAIL_COMPONENT_FOLDER_TEMPLATES); templates_info = camel_store_get_folder_info (store, templates_folder->full_name, @@ -707,22 +689,10 @@ action_template_cb (GtkAction *action, { CamelMessageInfo *info; CamelMimeMessage *msg; - CamelStore *store; CamelFolder *templates_folder; - char *basedir; - char *url; - /* We get the templates folder and all the uids of the messages in there */ - basedir = g_build_filename (g_get_home_dir (), ".evolution", "mail", "local", NULL); - url = g_strdup_printf ("mbox://%s", basedir); - g_free (basedir); - - store = (CamelStore *) camel_session_get_service (session, url, CAMEL_PROVIDER_STORE, NULL); - g_free (url); - - templates_folder = camel_store_get_folder (store, _("Templates"), CAMEL_STORE_FOLDER_CREATE, NULL); - + templates_folder = mail_component_get_folder(NULL, MAIL_COMPONENT_FOLDER_TEMPLATES); msg = e_msg_composer_get_message_draft (composer); info = camel_message_info_new (NULL); |