2006-03-06  Simon Zheng  <simon.zheng@sun.com>

        Fixes bug #332140
        * gui/dialogs/comp-editor.c: (get_attachment_list):
        * gui/e-cal-popup.c: (temp_save_part):
        Transfer filenames from utf-8 to glib encoding before really
        saving files.

svn path=/trunk/; revision=31663
This commit is contained in:
Simon Zheng
2006-03-06 10:45:57 +00:00
committed by Simon Zheng
parent 1ad03dc11b
commit 4ec70528ea
3 changed files with 23 additions and 9 deletions

View File

@ -1,3 +1,11 @@
2006-03-06 Simon Zheng <simon.zheng@sun.com>
Fixes bug #332140
* gui/dialogs/comp-editor.c: (get_attachment_list):
* gui/e-cal-popup.c: (temp_save_part):
Transfer filenames from utf-8 to glib encoding before really
saving files.
2006-03-06 Simon Zheng <simon.zheng@sun.com>
Fixes #311482

View File

@ -634,7 +634,7 @@ get_attachment_list (CompEditor *editor)
CamelDataWrapper *wrapper;
CamelStream *stream;
char *attach_file_url;
char *safe_fname;
char *safe_fname, *utf8_safe_fname;
char *filename;
wrapper = camel_medium_get_content_object (CAMEL_MEDIUM (p->data));
@ -642,7 +642,9 @@ get_attachment_list (CompEditor *editor)
/* Extract the content from the stream and write it down
* as a mime part file into the directory denoting the
* calendar source */
safe_fname = camel_file_util_safe_filename(camel_mime_part_get_filename ((CamelMimePart *)p->data));
utf8_safe_fname = camel_file_util_safe_filename (camel_mime_part_get_filename ((CamelMimePart *) p->data));
safe_fname = g_filename_from_utf8 ((const char *) utf8_safe_fname, -1, NULL, NULL, NULL);
g_free (utf8_safe_fname);
filename = g_strdup_printf ("%s-%s", comp_uid, safe_fname);

View File

@ -91,7 +91,7 @@ static char *
temp_save_part(CamelMimePart *part, char *path, gboolean file)
{
const char *filename;
char *tmpdir, *mfilename = NULL;
char *tmpdir, *utf8_mfilename = NULL, *mfilename = NULL;
CamelStream *stream;
CamelDataWrapper *wrapper;
@ -106,9 +106,11 @@ temp_save_part(CamelMimePart *part, char *path, gboolean file)
/* This is the default filename used for temporary file creation */
filename = _("Unknown");
} else {
mfilename = g_strdup(filename);
e_filename_make_safe(mfilename);
filename = mfilename;
utf8_mfilename = g_strdup (filename);
e_filename_make_safe (utf8_mfilename);
mfilename = g_filename_from_utf8 ((const char *) utf8_mfilename, -1, NULL, NULL, NULL);
g_free (utf8_mfilename);
filename = (const char *) mfilename;
}
path = g_build_filename(tmpdir, filename, NULL);
@ -121,9 +123,11 @@ temp_save_part(CamelMimePart *part, char *path, gboolean file)
/* This is the default filename used for temporary file creation */
filename = _("Unknown");
} else {
mfilename = g_strdup(filename);
e_filename_make_safe(mfilename);
filename = mfilename;
utf8_mfilename = g_strdup (filename);
e_filename_make_safe (utf8_mfilename);
mfilename = g_filename_from_utf8 ((const char *)utf8_mfilename, -1, NULL, NULL, NULL);
g_free (utf8_mfilename);
filename = (const char *) mfilename;
}
path = g_build_filename(tmpdir, filename, NULL);