From 073bb2c022a2eb9031f6ef84970c3fa153e764a7 Mon Sep 17 00:00:00 2001 From: Michał Górny Date: Mon, 27 Nov 2017 15:11:52 +0100 Subject: openpgp: Make missing gpgconf non-fatal --- gemato/openpgp.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gemato/openpgp.py b/gemato/openpgp.py index 6df28de..56257f5 100644 --- a/gemato/openpgp.py +++ b/gemato/openpgp.py @@ -71,9 +71,15 @@ class OpenPGPEnvironment(object): def close(self): if self._home is not None: if self._started: - # terminate the agent spawned by the process - subprocess.Popen(['gpgconf', '--kill', 'all'], - env={'GNUPGHOME': self._home}).wait() + try: + # terminate the agent spawned by the process + subprocess.Popen(['gpgconf', '--kill', 'all'], + env={'GNUPGHOME': self._home}).wait() + except OSError as e: + # ignore ENOENT -- most likely it means gpg1 which + # had no gpg-agent + if e.errno != errno.ENOENT: + raise shutil.rmtree(self._home, onerror=self._rmtree_error_handler) self._home = None -- cgit v1.2.3