[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: [PATCH] lineedit: omit directories when tab-completing from PATH
From: Ron Yorston <rmy () pobox ! com>
Date: 2020-12-10 14:44:57
Message-ID: 5fd23469.xOjLIV670hVXp2YQ%rmy () pobox ! com
[Download RAW message or body]
Only files should be matched when using PATH for tab-completion.
function old new delta
complete_cmd_dir_file 883 894 +11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 11/0) Total: 11 bytes
Signed-off-by: Ron Yorston <rmy@pobox.com>
---
libbb/lineedit.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libbb/lineedit.c b/libbb/lineedit.c
index a3b798e3f..d64d7d0c2 100644
--- a/libbb/lineedit.c
+++ b/libbb/lineedit.c
@@ -871,6 +871,9 @@ static NOINLINE unsigned complete_cmd_dir_file(const char *command, int type)
strcpy(found, name_found);
if (S_ISDIR(st.st_mode)) {
+ /* skip directories if searching PATH */
+ if (type == FIND_EXE_ONLY && !dirbuf)
+ goto cont;
/* name is a directory, add slash */
found[len] = '/';
found[len + 1] = '\0';
--
2.29.2
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic