From 56e89999abc137213fae006606b889eb1534faf7 Mon Sep 17 00:00:00 2001 From: Michael R Sweet Date: Thu, 12 May 2005 15:01:24 +0000 Subject: Fl_File_Chooser now returns directory names with a trailing slash to avoid problems with relative filenames (STR #819) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4335 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- CHANGES | 3 +++ src/Fl_File_Chooser2.cxx | 23 ++--------------------- 2 files changed, 5 insertions(+), 21 deletions(-) diff --git a/CHANGES b/CHANGES index d5f278376..eb73c1917 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,9 @@ CHANGES IN FLTK 1.1.7 - Documentation fixes (STR #648, STR #692, STR #730, STR #744, STR #745) + - Fl_File_Chooser now returns directory names with a + trailing slash to avoid problems with relative + filenames (STR #819) - Fl_Help_View now supports the FONT and U elements (STR #815) - OpenGL windows that were completely off-screen caused diff --git a/src/Fl_File_Chooser2.cxx b/src/Fl_File_Chooser2.cxx index 6c7ebc084..98a3f0f13 100644 --- a/src/Fl_File_Chooser2.cxx +++ b/src/Fl_File_Chooser2.cxx @@ -1039,15 +1039,7 @@ Fl_File_Chooser::value(int f) // I - File number if (!(type_ & MULTI)) { // Return the filename in the filename field... if (!name || !name[0]) return NULL; - else if (fl_filename_isdir(name)) { - if (type_ & DIRECTORY) { - // Strip trailing slash, if any... - strlcpy(pathname, name, sizeof(pathname)); - slash = pathname + strlen(pathname) - 1; - if (*slash == '/') *slash = '\0'; - return pathname; - } else return NULL; - } else return name; + else return name; } // Return a filename from the list... @@ -1065,24 +1057,13 @@ Fl_File_Chooser::value(int f) // I - File number strlcpy(pathname, name, sizeof(pathname)); } - // Strip trailing slash, if any... - slash = pathname + strlen(pathname) - 1; - if (*slash == '/') *slash = '\0'; return pathname; } } // If nothing is selected, use the filename field... if (!name || !name[0]) return NULL; - else if (fl_filename_isdir(name)) { - if (type_ & DIRECTORY) { - // Strip trailing slash, if any... - strlcpy(pathname, name, sizeof(pathname)); - slash = pathname + strlen(pathname) - 1; - if (*slash == '/') *slash = '\0'; - return pathname; - } else return NULL; - } else return name; + else return name; } -- cgit v1.2.3