libvirt/tools
Michal Privoznik 7657804df7 bash-completion: Fix argument passing to $1
Our vsh bash completion string is merely just a wrapper over
virsh/virt-admin complete (cmdComplete) - a hidden command that
uses internal readline completion to generate list of candidates.
But this means that we have to pass some additional arguments to
the helper process: e.g. connection URI and R/O flag.

Candidates are printed on a separate line each (and can contain
space), which means that when bash is reading the helper's output
into an array, it needs to split items on '\n' char - hence the
IFS=$'\n' prefix on the line executing the helper. This was
introduced in b889594a70.

But this introduced a regression - those extra arguments we might
pass are stored in a string and previously were split on a space
character (because $IFS was kept untouched and by default
contains space). But now, after the fix that's no longer the case
and thus virsh/virt-admin sees ' -r -c URI' as one argument.

The solution is to take $IFS out of the picture by storing the
extra arguments in an array instead of string.

Fixes: b889594a70
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Erik Skultety <eskultet@redhat.com>
2021-04-22 10:14:38 +02:00
..
bash-completion bash-completion: Fix argument passing to $1 2021-04-22 10:14:38 +02:00
nss meson: Fix build with -Dtest_coverage=true 2021-01-19 16:25:50 +01:00
wireshark Remove references to deleted Makefile.am 2021-04-13 11:21:00 +02:00
libvirt_recover_xattrs.sh tools: Fix dry run of libvirt_recover_xattrs.sh 2021-03-02 09:42:38 +01:00
libvirt_win_icon_16x16.ico
libvirt_win_icon_32x32.ico
libvirt_win_icon_48x48.ico
libvirt_win_icon_64x64.ico
libvirt-guests.service.in
libvirt-guests.sh.in libvirt-guests: Sync time for autostarted guests 2020-11-04 12:18:05 +01:00
libvirt-guests.sysconf libvirt-guests: Remove obsolete Windows comment 2020-12-07 10:38:44 +00:00
meson.build Fix spelling 2021-04-15 15:42:21 +02:00
virsh_win_icon.rc
virsh-backup.c virsh: limit completion of backup-{begin, dumpxml} to active domains 2020-09-14 15:52:40 +02:00
virsh-backup.h backup: Implement virsh support for backup 2019-12-10 12:41:56 +01:00
virsh-checkpoint.c virshCheckpointListCollect: Do not pass NULL to qsort 2021-04-19 16:09:56 -04:00
virsh-checkpoint.h
virsh-completer-checkpoint.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-checkpoint.h
virsh-completer-domain.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-domain.h virsh: Add virshKeycodeNameCompleter 2021-02-19 07:39:56 +01:00
virsh-completer-host.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-host.h virsh: Add logical CPU IDs completion for nodecpustats command 2020-11-10 18:34:02 +01:00
virsh-completer-interface.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-interface.h virsh: Add interface mac completion to iface-name command 2020-11-10 18:34:11 +01:00
virsh-completer-network.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-network.h virsh: Add mac completion to net-dhcp-leases command 2020-11-10 18:34:23 +01:00
virsh-completer-nodedev.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-nodedev.h
virsh-completer-nwfilter.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-nwfilter.h
virsh-completer-pool.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-pool.h
virsh-completer-secret.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-secret.h
virsh-completer-snapshot.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-snapshot.h
virsh-completer-volume.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-completer-volume.h
virsh-completer.c Replace virStringSplit with g_strsplit 2021-02-11 17:05:34 +01:00
virsh-completer.h
virsh-console.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-console.h
virsh-domain-monitor.c cmdDomBlkError: Fix crash when initial call to virDomainGetDiskErrors fails 2021-04-19 11:04:53 +02:00
virsh-domain-monitor.h virsh: Fix virshDomainInterfaceSourceCompleter 2020-01-07 16:12:55 +01:00
virsh-domain.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-domain.h virsh: Move/add some of function declarations to virsh-domain.h 2020-11-10 18:34:26 +01:00
virsh-edit.c
virsh-host.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-host.h
virsh-interface.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-interface.h
virsh-network.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-network.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-nodedev.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-nodedev.h
virsh-nwfilter.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-nwfilter.h
virsh-pool.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-pool.h
virsh-secret.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-secret.h
virsh-snapshot.c cmdSnapshotList: Fix memory leak 2021-04-19 16:09:56 -04:00
virsh-snapshot.h
virsh-util.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-util.h lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-volume.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh-volume.h
virsh.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virsh.h lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virt-admin-completer.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virt-admin-completer.h
virt-admin.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virt-admin.h lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virt-host-validate-bhyve.c
virt-host-validate-bhyve.h
virt-host-validate-common.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virt-host-validate-common.h lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virt-host-validate-lxc.c
virt-host-validate-lxc.h
virt-host-validate-qemu.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
virt-host-validate-qemu.h
virt-host-validate.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virt-login-shell-helper.c Replace AbsPath judgement method with g_path_is_absolute() 2021-04-21 10:02:09 +02:00
virt-login-shell.c
virt-login-shell.conf
virt-pki-validate.in
virt-sanlock-cleanup.in
virt-xml-validate.in
vsh-table.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
vsh-table.h lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
vsh.c lib: Drop internal virXXXPtr typedefs 2021-04-13 17:00:38 +02:00
vsh.h vsh: Rework how option to complete is found 2021-01-26 16:46:41 +01:00