From: Arun Prakash Jana <engineerarun@gmail.com>
Date: Sun, 3 May 2020 09:55:19 +0000 (+0530)
Subject: Decouple listpath and initpath
X-Git-Tag: v3.2~77
X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=3f60a1931f1e51c8e90516dd7e716244da7f42e7;p=nnn.git

Decouple listpath and initpath
---

diff --git a/src/nnn.c b/src/nnn.c
index c4f4bbac..d9a20dfc 100644
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -1170,14 +1170,14 @@ static size_t seltofile(int fd, uint *pcount)
 
 	if (listpath) {
 		prefixlen = (ssize_t)xstrlen(prefixpath);
-		initlen = (ssize_t)xstrlen(initpath);
+		initlen = (ssize_t)xstrlen(listpath);
 	}
 
 	while (pos <= lastpos) {
 		DPRINTF_S(pbuf);
 		len = (ssize_t)xstrlen(pbuf);
 
-		if (!listpath || strncmp(initpath, pbuf, initlen) != 0) {
+		if (!listpath || strncmp(listpath, pbuf, initlen) != 0) {
 			if (write(fd, pbuf, len) != len)
 				return pos;
 		} else {
@@ -4225,8 +4225,9 @@ static void rmlistpath()
 {
 	if (listpath) {
 		DPRINTF_S(__FUNCTION__);
-		DPRINTF_S(initpath);
-		spawn("rm -rf", initpath, NULL, NULL, F_NOTRACE | F_MULTI);
+		DPRINTF_S(listpath);
+		spawn("rm -rf", listpath, NULL, NULL, F_NOTRACE | F_MULTI);
+		free(listpath);
 		listpath = NULL;
 	}
 }
@@ -4261,11 +4262,6 @@ static void readpipe(int fd, char **path, char **lastname, char **lastdir)
 		rmlistpath();
 
 		nextpath = load_input(fd, *path);
-		if (nextpath) {
-			free(initpath);
-			initpath = nextpath;
-			DPRINTF_S(initpath);
-		}
 	}
 
 	if (nextpath) {