From: Arun Prakash Jana <engineerarun@gmail.com>
Date: Sat, 11 Jun 2022 16:02:16 +0000 (+0530)
Subject: Skip redundant getutil() call
X-Git-Tag: v4.6~45
X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=19b2ea324aa5260d27507cb9be77c72a07e4afb8;p=nnn.git

Skip redundant getutil() call
---

diff --git a/src/nnn.c b/src/nnn.c
index a5dfb547..df326430 100644
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -4643,10 +4643,10 @@ static bool handle_archive(char *fpath /* in-out param */, char op)
 	char *util, *outdir = NULL;
 	bool x_to = FALSE;
 	bool is_bsdtar = getutil(utils[UTIL_BSDTAR]);
-	bool is_atool = getutil(utils[UTIL_ATOOL]);
+	bool is_atool = !is_bsdtar && getutil(utils[UTIL_ATOOL]);
 
 	if (op == 'x') {
-		outdir = xreadline((!is_bsdtar && is_atool) ? "." : xbasename(fpath), messages[MSG_NEW_PATH]);
+		outdir = xreadline(is_atool ? "." : xbasename(fpath), messages[MSG_NEW_PATH]);
 		if (!outdir || !*outdir) { /* Cancelled */
 			printwait(messages[MSG_CANCEL], NULL);
 			return FALSE;