summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2018-03-07 10:27:46 +0100
committerLars Wendler <polynomial-c@gentoo.org>2018-03-07 10:27:46 +0100
commitda1d16289d67d7d99ec17e1d04f0aa0bbab5c7b8 (patch)
tree616bd13a58537b6f70a522af7be31fa7e5a862b4 /sys-apps/util-linux/files
parentsys-apps/util-linux: Removed old. (diff)
downloadgentoo-da1d16289d67d7d99ec17e1d04f0aa0bbab5c7b8.tar.gz
gentoo-da1d16289d67d7d99ec17e1d04f0aa0bbab5c7b8.tar.bz2
gentoo-da1d16289d67d7d99ec17e1d04f0aa0bbab5c7b8.zip
sys-apps/util-linux: Revbump fix bash-completion umount code execution
Committed straight to stable. Bug: https://bugs.gentoo.org/649812 Package-Manager: Portage-2.3.24, Repoman-2.3.6
Diffstat (limited to 'sys-apps/util-linux/files')
-rw-r--r--sys-apps/util-linux/files/util-linux-2.32_rc2-umount_completion.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/sys-apps/util-linux/files/util-linux-2.32_rc2-umount_completion.patch b/sys-apps/util-linux/files/util-linux-2.32_rc2-umount_completion.patch
new file mode 100644
index 000000000000..1317c56f89e7
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.32_rc2-umount_completion.patch
@@ -0,0 +1,41 @@
+From 75f03badd7ed9f1dd951863d75e756883d3acc55 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 16 Nov 2017 16:27:32 +0100
+Subject: [PATCH] bash-completion: (umount) use findmnt, escape a space in
+ paths
+
+ # mount /dev/sdc1 /mnt/test/foo\ bar
+ # umount <tab>
+
+has to return "/mnt/test/foo\ bar".
+
+Changes:
+
+ * don't use mount | awk output, we have findmnt
+ * force compgen use \n as entries separator
+
+Addresses: https://github.com/karelzak/util-linux/issues/539
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ bash-completion/umount | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/bash-completion/umount b/bash-completion/umount
+index d76cb9fff..98c90d61a 100644
+--- a/bash-completion/umount
++++ b/bash-completion/umount
+@@ -40,9 +40,10 @@ _umount_module()
+ return 0
+ ;;
+ esac
+- local DEVS_MPOINTS
+- DEVS_MPOINTS="$(mount | awk '{print $1, $3}')"
+- COMPREPLY=( $(compgen -W "$DEVS_MPOINTS" -- $cur) )
+- return 0
++
++ local oldifs=$IFS
++ IFS=$'\n'
++ COMPREPLY=( $( compgen -W '$(findmnt -lno TARGET | sed "s/\([[:blank:]]\)/\\\\\1/g")' -- "$cur" ) )
++ IFS=$oldifs
+ }
+ complete -F _umount_module umount