]> Sergey Matveev's repositories - nnn.git/commitdiff
Code refactor
authorArun Prakash Jana <engineerarun@gmail.com>
Fri, 27 Dec 2019 03:56:20 +0000 (09:26 +0530)
committerArun Prakash Jana <engineerarun@gmail.com>
Fri, 27 Dec 2019 03:56:20 +0000 (09:26 +0530)
src/nnn.c

index d929c971355a03fa5a68915fcec1d7a9362eec30..9f699436d5814e6a1649194ccb9a728134b30c1c 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -5460,36 +5460,24 @@ nochange:
                                        break; // fallthrough
                        }
 
-                       if (sel == SEL_QUITCD || getenv("NNN_TMPFILE")) {
-                               /* In vim picker mode, clear selection and exit */
-                               if (cfg.picker) {
-                                       /* Picker mode: reset buffer or clear file */
-                                       selbufpos = 0;
-                               } else if (!write_lastdir(path)) {
-                                       presel = MSGWAIT;
-                                       goto nochange;
-                               }
-                       }
+                       /* CD on Quit */
+                       /* In vim picker mode, clear selection and exit */
+                       /* Picker mode: reset buffer or clear file */
+                       if (sel == SEL_QUITCD || getenv("NNN_TMPFILE"))
+                               cfg.picker ? selbufpos = 0 : write_lastdir(path);
                        return;
                default:
-                       if (xlines != LINES || xcols != COLS) {
-                               idle = 0;
-                               setdirwatch();
-                               if (ndents)
-                                       copycurname();
-                               goto begin;
-                       }
-
-                       /* Locker */
-                       if (idletimeout && idle == idletimeout) {
-                               idle = 0;
-                               lock_terminal();
-                               if (ndents)
-                                       copycurname();
-                               goto begin;
-                       }
+                       if (xlines != LINES || xcols != COLS)
+                               setdirwatch(); /* Terminal resized */
+                       else if (idletimeout && idle == idletimeout)
+                               lock_terminal(); /* Locker */
+                       else
+                               goto nochange;
 
-                       goto nochange;
+                       idle = 0;
+                       if (ndents)
+                               copycurname();
+                       goto begin;
                } /* switch (sel) */
        }
 }