aboutsummaryrefslogtreecommitdiffstats
path: root/mail/message-list.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@helixcode.com>2000-12-01 06:44:00 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2000-12-01 06:44:00 +0800
commit8fa85c39e57e7a4a71fd8beaac0fec733c328ae1 (patch)
tree0652961f25c721e9b664c459f7547b5dca3809bf /mail/message-list.c
parentbe13fec34348b896b22543dd6f4693ec19d1ac02 (diff)
downloadgsoc2013-evolution-8fa85c39e57e7a4a71fd8beaac0fec733c328ae1.tar
gsoc2013-evolution-8fa85c39e57e7a4a71fd8beaac0fec733c328ae1.tar.gz
gsoc2013-evolution-8fa85c39e57e7a4a71fd8beaac0fec733c328ae1.tar.bz2
gsoc2013-evolution-8fa85c39e57e7a4a71fd8beaac0fec733c328ae1.tar.lz
gsoc2013-evolution-8fa85c39e57e7a4a71fd8beaac0fec733c328ae1.tar.xz
gsoc2013-evolution-8fa85c39e57e7a4a71fd8beaac0fec733c328ae1.tar.zst
gsoc2013-evolution-8fa85c39e57e7a4a71fd8beaac0fec733c328ae1.zip
Don't display a dialog, instead inform the user that there was no new mail
2000-11-30 Jeffrey Stedfast <fejj@helixcode.com> * mail-ops.c (cleanup_fetch_mail): Don't display a dialog, instead inform the user that there was no new mail by setting a status message. * message-list.c (message_list_drag_data_get): Use the new e_str_make_safe function. * mail-display.c (make_safe_filename): And here. * mail-config.c (mail_config_folder_to_cachename): Here too. svn path=/trunk/; revision=6745
Diffstat (limited to 'mail/message-list.c')
-rw-r--r--mail/message-list.c25
1 files changed, 21 insertions, 4 deletions
diff --git a/mail/message-list.c b/mail/message-list.c
index 41477fc8c9..9cc69daac4 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -390,14 +390,30 @@ message_list_drag_data_get (ETable *table,
MessageList *mlist = (MessageList *) user_data;
const CamelMessageInfo *minfo = get_message_info (mlist, row);
GPtrArray *uids = NULL;
- char *dirname = "/tmp/ev-XXXXXXXXXX";
- char *filename;
+ char *tmpl, *tmpdir, *filename, *subject, *p;
switch (info) {
case DND_TARGET_LIST_TYPE_URI:
/* drag & drop into nautilus */
- mktemp (dirname);
- filename = g_strdup_printf ("%s/%s.eml", dirname, camel_message_info_subject(minfo));
+ tmpl = g_strdup ("/tmp/evolution.XXXXXX");
+#ifdef HAVE_MKDTEMP
+ tmpdir = mkdtemp (tmpl);
+#else
+ tmpdir = mktemp (tmpl);
+ if (tmpdir) {
+ if (mkdir (tmpdir, S_IRWXU) == -1)
+ tmpdir = NULL;
+ }
+#endif
+ if (!tmpdir) {
+ g_free (tmpl);
+ return;
+ }
+
+ subject = g_strdup (camel_message_info_subject (minfo));
+ e_str_make_safe (subject);
+ filename = g_strdup_printf ("%s/%s.eml", tmpdir, subject);
+ g_free (subject);
uids = g_ptr_array_new ();
g_ptr_array_add (uids, g_strdup (mlist->cursor_uid));
@@ -407,6 +423,7 @@ message_list_drag_data_get (ETable *table,
gtk_selection_data_set (selection_data, selection_data->target, 8,
(guchar *) filename, strlen (filename));
+ g_free (tmpl);
g_free (filename);
break;
default: