summaryrefslogtreecommitdiff
path: root/src/nautilus-location-entry.c
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2004-10-28 14:00:38 +0000
committerAlexander Larsson <alexl@src.gnome.org>2004-10-28 14:00:38 +0000
commit1fd8052fa7d77b0b20eeaad5d8368947440db093 (patch)
treee0026f8dc28ec12f621a4b45ae5d4df86d1845a3 /src/nautilus-location-entry.c
parent14704c0966ac5c6d8ae65b0b62cd95d6fca8aa92 (diff)
downloadnautilus-1fd8052fa7d77b0b20eeaad5d8368947440db093.tar.gz
Use eel_get_filename_charset to handle the new filename charset env vars.
2004-10-28 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-file-utilities.c: (nautilus_get_uri_shortname_for_display): * libnautilus-private/nautilus-file-utilities.h: * libnautilus-private/nautilus-file.c: (nautilus_file_rename), (nautilus_file_get_display_name_nocopy): * src/nautilus-location-entry.c: (try_to_expand_path): Use eel_get_filename_charset to handle the new filename charset env vars.
Diffstat (limited to 'src/nautilus-location-entry.c')
-rw-r--r--src/nautilus-location-entry.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/nautilus-location-entry.c b/src/nautilus-location-entry.c
index 06bf1de48..b9b344942 100644
--- a/src/nautilus-location-entry.c
+++ b/src/nautilus-location-entry.c
@@ -162,6 +162,8 @@ try_to_expand_path (gpointer callback_data)
GList *element;
GnomeVFSURI *uri;
GtkEditable *editable;
+ gboolean utf8_filenames;
+ const char *filename_charset;
char *base_name_uri_escaped;
char *base_name;
@@ -240,6 +242,8 @@ try_to_expand_path (gpointer callback_data)
return FALSE;
}
+ utf8_filenames = eel_get_filename_charset (&filename_charset);
+
/* iterate through the directory, keeping the intersection of all the names that
have the current basename as a prefix. */
expand_text = NULL;
@@ -251,23 +255,23 @@ try_to_expand_path (gpointer callback_data)
} else {
expand_name = g_strdup (current_file_info->name);
}
- if (nautilus_have_broken_filenames()) {
- expand_text = accumulate_name_locale (expand_text, expand_name);
- } else {
+ if (utf8_filenames) {
expand_text = accumulate_name_utf8 (expand_text, expand_name);
+ } else {
+ expand_text = accumulate_name_locale (expand_text, expand_name);
}
g_free (expand_name);
}
}
- if (nautilus_have_broken_filenames ()) {
+ if (!utf8_filenames) {
if (expand_text) {
- expand_text_utf8 = g_locale_to_utf8 (expand_text, -1, NULL, NULL, NULL);
+ expand_text_utf8 = g_convert (expand_text, -1, "UTF-8", filename_charset, NULL, NULL, NULL);
g_free (expand_text);
expand_text = expand_text_utf8;
}
- base_name_utf8 = g_locale_to_utf8 (base_name, -1, NULL, NULL, NULL);
+ base_name_utf8 = g_convert (base_name, -1, "UTF-8", filename_charset, NULL, NULL, NULL);
g_free (base_name);
base_name = base_name_utf8;
}