diff options
author | Guy Harris <guy@alum.mit.edu> | 2012-06-03 19:31:59 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2012-06-03 19:31:59 +0000 |
commit | 49ac36fd5967923ded246879141fa84155a5a69e (patch) | |
tree | 29553edb9f75669ea4eff05d4cd16ee91d1495a0 | |
parent | 6230f466709c56095023782e43a21f32ea59a34e (diff) | |
download | wireshark-49ac36fd5967923ded246879141fa84155a5a69e.tar.gz |
Use g_filename_display_basename() rather than get_basename() when we're
getting the basename for display purposes, so it's converted from the
GLib/GTK+ locale filename encoding to UTF-8. (For Windows, the locale
filename encoding is UTF-8, and the internal encoding is UTF-16, so the
file names should *probably* all be valid UTF-8 - Windows may not
support invalid UTF-16 in file names. For Qt, I'm not sure whether the
file dialogs ever return file names in some non-UTF-8 encoding.)
svn path=/trunk/; revision=43044
-rw-r--r-- | file.c | 4 | ||||
-rw-r--r-- | ui/gtk/capture_file_dlg.c | 2 | ||||
-rw-r--r-- | ui/gtk/main_statusbar.c | 4 |
3 files changed, 5 insertions, 5 deletions
@@ -523,7 +523,7 @@ cf_read(capture_file *cf, gboolean reloading) reset_tap_listeners(); - name_ptr = get_basename(cf->filename); + name_ptr = g_filename_display_basename(cf->filename); if (reloading) cf_callback_invoke(cf_cb_file_reload_started, cf); @@ -978,7 +978,7 @@ cf_get_display_name(capture_file *cf) if (!cf->is_tempfile) { /* Get the last component of the file name, and use that. */ if (cf->filename){ - displayname = get_basename(cf->filename); + displayname = g_filename_display_basename(cf->filename); } else { displayname="(No file)"; } diff --git a/ui/gtk/capture_file_dlg.c b/ui/gtk/capture_file_dlg.c index 18437b53f0..04a7cda96f 100644 --- a/ui/gtk/capture_file_dlg.c +++ b/ui/gtk/capture_file_dlg.c @@ -173,7 +173,7 @@ preview_set_filename(GtkWidget *prev, const gchar *cf_name) } label = (GtkWidget *)g_object_get_data(G_OBJECT(prev), PREVIEW_FILENAME_KEY); - gtk_label_set_text(GTK_LABEL(label), get_basename(cf_name)); + gtk_label_set_text(GTK_LABEL(label), g_filename_display_basename(cf_name)); if (test_for_directory(cf_name) == EISDIR) { label = (GtkWidget *)g_object_get_data(G_OBJECT(prev), PREVIEW_FORMAT_KEY); diff --git a/ui/gtk/main_statusbar.c b/ui/gtk/main_statusbar.c index d7efa82a42..b7797d9ffa 100644 --- a/ui/gtk/main_statusbar.c +++ b/ui/gtk/main_statusbar.c @@ -745,7 +745,7 @@ statusbar_cf_file_read_started_cb(capture_file *cf, const char *action) /* Ensure we pop any previous loaded filename */ statusbar_pop_file_msg(); - name_ptr = get_basename(cf->filename); + name_ptr = g_filename_display_basename(cf->filename); statusbar_push_file_msg(" %s: %s", action, name_ptr); } @@ -926,7 +926,7 @@ static void statusbar_cf_file_save_started_cb(gchar *filename) { statusbar_pop_file_msg(); - statusbar_push_file_msg(" Saving: %s...", get_basename(filename)); + statusbar_push_file_msg(" Saving: %s...", g_filename_display_basename(filename)); } static void |