From 0e623010e624832b16458e85925d2a2ac2dd1a4b Mon Sep 17 00:00:00 2001 From: Arun Prakash Jana Date: Mon, 19 Mar 2018 05:59:15 +0530 Subject: [PATCH] Switch to current dir to run editor/vidir --- nnn.c | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/nnn.c b/nnn.c index bcba1251..0e630818 100644 --- a/nnn.c +++ b/nnn.c @@ -2520,7 +2520,7 @@ nochange: */ if (editor) { if (getmime(dents[cur].name)) { - spawn(editor, newpath, NULL, NULL, F_NORMAL); + spawn(editor, newpath, NULL, path, F_NORMAL); continue; } @@ -2531,7 +2531,7 @@ nochange: continue; if (strstr(g_buf, "text/") == g_buf) { - spawn(editor, newpath, NULL, NULL, F_NORMAL); + spawn(editor, newpath, NULL, path, F_NORMAL); continue; } } @@ -3150,24 +3150,7 @@ nochange: goto nochange; } - /* Save the program start dir */ - tmp = getcwd(newpath, PATH_MAX); - if (tmp == NULL) { - printwarn(); - goto nochange; - } - - /* Switch to current path for readline(3) */ - if (chdir(path) == -1) { - printwarn(); - goto nochange; - } - - spawn(utils[VIDIR], ".", NULL, NULL, F_NORMAL); - - /* Change back to program start dir */ - if (chdir(newpath) == -1) - printwarn(); + spawn(utils[VIDIR], ".", NULL, path, F_NORMAL); /* Save current */ if (ndents > 0)