From aea97cf3a7e2f2cfd1ae607363c89be17b8e8dc7 Mon Sep 17 00:00:00 2001 From: Arun Prakash Jana Date: Thu, 9 Sep 2021 23:17:22 +0530 Subject: [PATCH] More checks --- src/nnn.c | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/src/nnn.c b/src/nnn.c index 88a9ab9f..44f297f4 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -4198,8 +4198,10 @@ static void savecurctx(char *path, char *curname, int nextctx) if (ctxr->c_cfg.ctxactive) { /* Switch to saved context */ tmpcfg = ctxr->c_cfg; /* Skip ordering an open context */ - cfgsort[CTX_MAX] = cfgsort[nextctx]; - cfgsort[nextctx] = '0'; + if (order) { + cfgsort[CTX_MAX] = cfgsort[nextctx]; + cfgsort[nextctx] = '0'; + } } else { /* Set up a new context from current context */ ctxr->c_cfg.ctxactive = 1; xstrsncpy(ctxr->c_path, path, PATH_MAX); @@ -6577,16 +6579,18 @@ begin: } #endif - if (order && cfgsort[cfg.curctx] != '0') { - if (cfgsort[cfg.curctx] == 'z') - set_sort_flags('c'); - if ((!cfgsort[cfg.curctx] || (cfgsort[cfg.curctx] == 'c')) - && ((r = get_kv_key(order, path, maxorder, NNN_ORDER)) > 0)) { - set_sort_flags(r); - cfgsort[cfg.curctx] = 'z'; - } - } else - cfgsort[cfg.curctx] = cfgsort[CTX_MAX]; + if (order) { + if (cfgsort[cfg.curctx] != '0') { + if (cfgsort[cfg.curctx] == 'z') + set_sort_flags('c'); + if ((!cfgsort[cfg.curctx] || (cfgsort[cfg.curctx] == 'c')) + && ((r = get_kv_key(order, path, maxorder, NNN_ORDER)) > 0)) { + set_sort_flags(r); + cfgsort[cfg.curctx] = 'z'; + } + } else + cfgsort[cfg.curctx] = cfgsort[CTX_MAX]; + } populate(path, lastname); if (g_state.interrupt) {