commit 721ac62f7212142629de92778be22cc1926ea6a6
parent 0169232d9c3ac4959688e75ec6986c6d1f917b3c
Author: Arun Prakash Jana <engineerarun@gmail.com>
Date: Sun, 11 Nov 2018 04:46:59 +0530
Ensure co file does not have stale paths
Diffstat:
1 file changed, 14 insertions(+), 0 deletions(-)
diff --git a/src/nnn.c b/src/nnn.c
@@ -2967,6 +2967,20 @@ nochange:
goto nochange;
if (cfg.copymode) {
+ /*
+ * Clear the tmp copy path file on first copy.
+ *
+ * This ensures that when the first file path is
+ * copied into memory (but not written to tmp file
+ * yet to save on writes), the tmp file is cleared.
+ * The user may be in the middle of a multicopy op
+ * and issue a cp, mv of multi-rm assuming the files
+ * in the copy list would be affected. However, these
+ * ops read the source file paths from the tmp file.
+ */
+ if (!ncp)
+ writecp(NULL, 0);
+
r = mkpath(path, dents[cur].name, newpath, PATH_MAX);
if (!appendfpath(newpath, r))
goto nochange;