aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUlf Lamping <ulf.lamping@web.de>2004-07-12 18:39:03 +0000
committerUlf Lamping <ulf.lamping@web.de>2004-07-12 18:39:03 +0000
commite987a57bc33f20efd4231ceff95b434f8b7ae2b8 (patch)
treea6f4a83836690d792200eee403368cf025235586
parent6587c1bfee3a7eea31a535fe27ab905ed02e41b5 (diff)
bugfix to a bug reported by Ian Schorr:
GTK2.4 open directory doesn't go into last opened dir (this will affect all open file dialogs) svn path=/trunk/; revision=11365
-rw-r--r--gtk/dlg_utils.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/gtk/dlg_utils.c b/gtk/dlg_utils.c
index 470b4f14b3..4c545f90df 100644
--- a/gtk/dlg_utils.c
+++ b/gtk/dlg_utils.c
@@ -1,7 +1,7 @@
/* dlg_utils.c
* Utilities to use when constructing dialogs
*
- * $Id: dlg_utils.c,v 1.39 2004/06/20 19:35:04 ulfl Exp $
+ * $Id: dlg_utils.c,v 1.40 2004/07/12 18:39:03 ulfl Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -425,8 +425,14 @@ file_selection_set_current_folder(GtkWidget *fs, const gchar *filename)
int filename_len = strlen(filename);
gchar *new_filename;
- /* trim filename, so gtk_file_chooser_set_current_folder() likes it */
- if (filename[filename_len -1] == G_DIR_SEPARATOR && filename[1] != ':') {
+ /* trim filename, so gtk_file_chooser_set_current_folder() likes it, see below */
+ if (filename[filename_len -1] == G_DIR_SEPARATOR
+#ifdef WIN32
+ && filename_len > 3) /* e.g. "D:\" */
+#else
+ && filename_len > 1) /* e.g. "/" */
+#endif
+ {
new_filename = g_strdup(filename);
new_filename[filename_len-1] = '\0';
} else {