aboutsummaryrefslogtreecommitdiffstats
path: root/main/bash-completion/01-generalized-containers.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/bash-completion/01-generalized-containers.patch')
-rw-r--r--main/bash-completion/01-generalized-containers.patch88
1 files changed, 0 insertions, 88 deletions
diff --git a/main/bash-completion/01-generalized-containers.patch b/main/bash-completion/01-generalized-containers.patch
deleted file mode 100644
index 9d9ce117e5..0000000000
--- a/main/bash-completion/01-generalized-containers.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 5443c819622495fcdc759d5dd4e5c31633eab389 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ville=20Skytt=C3=A4?= <ville.skytta@iki.fi>
-Date: Thu, 2 May 2019 16:57:25 +0300
-Subject: [PATCH] _pnames: adapt for busybox ps, rewrite in pure bash
-
-Closes https://github.com/scop/bash-completion/issues/318
----
- bash_completion | 51 ++++++++++++++++++++++++++++++------------
- test/t/test_killall.py | 4 ++++
- 2 files changed, 41 insertions(+), 14 deletions(-)
-
-diff --git a/bash_completion b/bash_completion
-index 58987a7fc1..bf7d02c753 100644
---- a/bash_completion
-+++ b/bash_completion
-@@ -1069,23 +1069,46 @@ _pnames()
- } ||
- _pnames()
- {
-+ local -a procs
- if [[ "$1" == -s ]]; then
-- COMPREPLY=( $(compgen -X '<defunct>' \
-- -W '$(command ps axo comm | command sed -e 1d)' -- "$cur") )
-+ procs=( $(command ps axo comm | command sed -e 1d) )
- else
-- # FIXME: completes "[kblockd/0]" to "0". Previously it was completed
-- # to "kblockd" which isn't correct either. "kblockd/0" would be
-- # arguably most correct, but killall from psmisc 22 treats arguments
-- # containing "/" specially unless -r is given so that wouldn't quite
-- # work either. Perhaps it'd be best to not complete these to anything
-- # for now.
-- COMPREPLY=( $(compgen -X '<defunct>' -W '$(command ps axo command= | command sed -e \
-- "s/ .*//" -e \
-- "s:.*/::" -e \
-- "s/:$//" -e \
-- "s/^[[(-]//" -e \
-- "s/[])]$//" | sort -u)' -- "$cur") )
-+ local line i=-1 OIFS=$IFS
-+ IFS=$'\n'
-+ local -a psout=( $(command ps axo command=) )
-+ IFS=$OIFS
-+ for line in "${psout[@]}"; do
-+ if [[ $i -eq -1 ]]; then
-+ # First line, see if it has COMMAND column header. For example
-+ # the busybox ps does that, i.e. doesn't respect axo command=
-+ if [[ $line =~ ^(.*[[:space:]])COMMAND([[:space:]]|$) ]]; then
-+ # It does; store its index.
-+ i=${#BASH_REMATCH[1]}
-+ else
-+ # Nope, fall through to "regular axo command=" parsing.
-+ break
-+ fi
-+ else
-+ #
-+ line=${line:$i} # take command starting from found index
-+ line=${line%% *} # trim arguments
-+ procs+=( $line )
-+ fi
-+ done
-+ if [[ $i -eq -1 ]]; then
-+ # Regular axo command= parsing
-+ for line in "${psout[@]}"; do
-+ if [[ $line =~ ^[[(](.+)[])]$ ]]; then
-+ procs+=( ${BASH_REMATCH[1]} )
-+ else
-+ line=${line%% *} # trim arguments
-+ line=${line##@(*/|-)} # trim leading path and -
-+ procs+=( $line )
-+ fi
-+ done
-+ fi
- fi
-+ COMPREPLY=( $(compgen -X "<defunct>" -W '${procs[@]}' -- "$cur" ) )
- }
-
- # This function completes on user IDs
-diff --git a/test/t/test_killall.py b/test/t/test_killall.py
-index 725a16e4d6..136eee7373 100644
---- a/test/t/test_killall.py
-+++ b/test/t/test_killall.py
-@@ -11,3 +11,7 @@ def test_1(self, completion):
- @pytest.mark.complete("killall --signal ")
- def test_2(self, completion):
- assert all(x in completion for x in "INT KILL TERM".split())
-+
-+ @pytest.mark.complete("killall ")
-+ def test_3(self, completion):
-+ assert "command=" not in completion