From fef232a6725e208e4467be5e33a22ab52bc73e4d Mon Sep 17 00:00:00 2001
From: David Lawrence Ramsey <pooka109@gmail.com>
Date: Fri, 30 Jun 2006 13:58:29 +0000
Subject: [PATCH] in striponedir(), since all the strings passed to this are
 dynamically allocated, use null_at() to strip the directory from the string

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3703 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
---
 ChangeLog     | 4 ++++
 src/browser.c | 6 +++---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 5c33f2d5..6b39019c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -27,6 +27,10 @@ CVS code -
 	  (DLR)
   findnextfile()
 	- Simplify the uses of tail(). (DLR)
+  striponedir()
+	- Since all the strings passed to this are dynamically
+	  allocated, use null_at() to strip the directory from the
+	  string. (DLR)
 - doc/syntax/c.nanorc:
 	- Since .i and .ii are preprocessed C and C++ output, colorize
 	  them here. (Mike Frysinger)
diff --git a/src/browser.c b/src/browser.c
index 7de12d6c..051d2512 100644
--- a/src/browser.c
+++ b/src/browser.c
@@ -334,7 +334,6 @@ char *do_browser(char *path, DIR *dir)
 			"..") == 0) {
 		    prev_dir = mallocstrcpy(NULL, filelist[selected]);
 		    striponedir(prev_dir);
-		    align(&prev_dir);
 		}
 
 		dir = opendir(filelist[selected]);
@@ -967,7 +966,8 @@ void do_last_file(void)
     selected = filelist_len - 1;
 }
 
-/* Strip one directory from the end of path. */
+/* Strip one directory from the end of path, which should be
+ * dynamically allocated. */
 void striponedir(char *path)
 {
     char *tmp;
@@ -977,7 +977,7 @@ void striponedir(char *path)
     tmp = strrchr(path, '/');
 
     if (tmp != NULL)
- 	*tmp = '\0';
+ 	null_at(&path, tmp - path);
 }
 
 #endif /* !DISABLE_BROWSER */
-- 
GitLab