From 8d6e12c0beb7bb9900bc950bffd41b86bc838bb4 Mon Sep 17 00:00:00 2001 From: Isis Lovecruft Date: Wed, 6 Mar 2013 17:39:21 +0000 Subject: [PATCH] Fix possible IOError due to second write() call in _copy_data(). * Fixes #1931. --- gnupg.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnupg.py b/gnupg.py index 4a73164..bae7890 100644 --- a/gnupg.py +++ b/gnupg.py @@ -114,7 +114,11 @@ def _copy_data(instream, outstream): try: outstream.write(data) except UnicodeError: - outstream.write(data.encode(enc)) + try: + outstream.write(data.encode(enc)) + except IOError: + logger.exception('Error sending data: Broken pipe') + break except IOError: # Can sometimes get 'broken pipe' errors even when the # data has all been sent