From 8f0ab14776283edf6082430872dce6002d39ac24 Mon Sep 17 00:00:00 2001 From: Andrey 'virus' Yantsen Date: Wed, 11 Jan 2017 17:57:21 +0300 Subject: [PATCH] Restore ssh-agent variables if found alive gpg-agent --- plugins/gpg-agent/gpg-agent.plugin.zsh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/plugins/gpg-agent/gpg-agent.plugin.zsh b/plugins/gpg-agent/gpg-agent.plugin.zsh index 3e6a34f42..d604fc91c 100644 --- a/plugins/gpg-agent/gpg-agent.plugin.zsh +++ b/plugins/gpg-agent/gpg-agent.plugin.zsh @@ -15,7 +15,15 @@ function start_agent_withssh { } # check if another agent is running -if ! gpg-connect-agent --quiet /bye > /dev/null 2> /dev/null; then +if gpg-connect-agent --quiet /bye > /dev/null 2> /dev/null; then + # source settings of old agent, if applicable + if [ -f "${GPG_ENV}" ] && [ -z "${SSH_AGENT_PID}" ]; then + . ${GPG_ENV} > /dev/null + export GPG_AGENT_INFO + export SSH_AUTH_SOCK + export SSH_AGENT_PID + fi +else # source settings of old agent, if applicable if [ -f "${GPG_ENV}" ]; then . ${GPG_ENV} > /dev/null