From: Chris Allegretta Date: Sun, 26 Jan 2003 22:05:07 +0000 (+0000) Subject: - files.c:do_browser() - Fix incorrect path check for check_operating_dir() (David... X-Git-Tag: v1.1.99pre2~19 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=b698c35f4bee4337e73602fcb1de3d603dd778fc;p=nano.git - files.c:do_browser() - Fix incorrect path check for check_operating_dir() (David Benbennick) git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1401 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- diff --git a/ChangeLog b/ChangeLog index 999209d2..5b8876c5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -17,6 +17,9 @@ CVS Code - - Fix incorrect cursor location when cutting long lines (David Benbennick). - files.c: + do_browser() + - Fix incorrect path check for check_operating_dir() + (David Benbennick). open_file() - Fix FD leak with file load error (David Benbennick). save_history() diff --git a/files.c b/files.c index e6225a41..b967d258 100644 --- a/files.c +++ b/files.c @@ -2613,14 +2613,12 @@ char *do_browser(const char *inpath) break; } - path = mallocstrcpy(path, filelist[selected]); - #ifndef DISABLE_OPERATINGDIR /* Note: The case of the user's being completely outside the operating directory is handled elsewhere, before this point */ if (operating_dir != NULL) { - if (check_operating_dir(path, 0)) { + if (check_operating_dir(filelist[selected], 0)) { statusbar(_("Can't visit parent in restricted mode")); beep(); break; @@ -2628,6 +2626,8 @@ char *do_browser(const char *inpath) } #endif + path = mallocstrcpy(path, filelist[selected]); + /* SPK for '.' path, get the current path via getcwd */ if (!strcmp(path, "./..")) { free(path);