]> Sergey Matveev's repositories - nnn.git/commitdiff
Change dir before readline()
authorArun Prakash Jana <engineerarun@gmail.com>
Sun, 27 Jan 2019 09:41:45 +0000 (15:11 +0530)
committerArun Prakash Jana <engineerarun@gmail.com>
Sun, 27 Jan 2019 09:41:45 +0000 (15:11 +0530)
src/nnn.c

index 6f27339f6a397c43098e83996c15143380e46e32..ce46c1cc11830aca2ad29c553687e503f2ac1927 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -3709,8 +3709,22 @@ nochange:
                                break;
                        default: /* SEL_RUNCMD */
                                exitcurses();
+
+                               /* Switch to current path for readline(3) */
+                               if (chdir(path) == -1) {
+                                       printwarn();
+                                       goto nochange;
+                               }
+
                                tmp = readline("nnn> ");
+
+                               if (chdir(ipath) == -1) {
+                                       printwarn();
+                                       goto nochange;
+                               }
+
                                refresh();
+
                                if (tmp && tmp[0]) {
                                        spawn(shell, "-c", tmp, path, F_NORMAL | F_SIGINT);
                                        add_history(tmp);