summaryrefslogtreecommitdiff
path: root/plugins/ssh-agent/ssh-agent.plugin.zsh
diff options
context:
space:
mode:
authorMarc Cornellà <marc.cornella@live.com>2019-09-08 16:07:06 +0200
committerMarc Cornellà <marc.cornella@live.com>2019-09-08 16:07:06 +0200
commit101ea872326211830e90d2bd01bd8506673f9d11 (patch)
tree4c855867e655097a1ba67eeca0be85f779bfa50f /plugins/ssh-agent/ssh-agent.plugin.zsh
parentc44569f06eef2a3b4a1666686e7040c33e59e49c (diff)
downloadzsh-101ea872326211830e90d2bd01bd8506673f9d11.tar.gz
zsh-101ea872326211830e90d2bd01bd8506673f9d11.tar.bz2
zsh-101ea872326211830e90d2bd01bd8506673f9d11.zip
ssh-agent: check if `ssh-add -l` was successful
Diffstat (limited to 'plugins/ssh-agent/ssh-agent.plugin.zsh')
-rw-r--r--plugins/ssh-agent/ssh-agent.plugin.zsh12
1 files changed, 7 insertions, 5 deletions
diff --git a/plugins/ssh-agent/ssh-agent.plugin.zsh b/plugins/ssh-agent/ssh-agent.plugin.zsh
index 9471ff49c..6ab041c21 100644
--- a/plugins/ssh-agent/ssh-agent.plugin.zsh
+++ b/plugins/ssh-agent/ssh-agent.plugin.zsh
@@ -12,7 +12,7 @@ function _start_agent() {
}
function _add_identities() {
- local id line sig
+ local id line sig lines
local -a identities loaded_sigs loaded_ids not_loaded
zstyle -a :omz:plugins:ssh-agent identities identities
@@ -32,10 +32,12 @@ function _add_identities() {
fi
# get list of loaded identities' signatures and filenames
- for line in ${(f)"$(ssh-add -l)"}; do
- loaded_sigs+=${${(z)line}[2]}
- loaded_ids+=${${(z)line}[3]}
- done
+ if lines=$(ssh-add -l); then
+ for line in ${(f)lines}; do
+ loaded_sigs+=${${(z)line}[2]}
+ loaded_ids+=${${(z)line}[3]}
+ done
+ fi
# add identities if not already loaded
for id in $identities; do