summaryrefslogtreecommitdiff
path: root/src/OpenSSL/crypto.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/OpenSSL/crypto.py')
-rw-r--r--src/OpenSSL/crypto.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/OpenSSL/crypto.py b/src/OpenSSL/crypto.py
index 7bb0cfa..4b86b95 100644
--- a/src/OpenSSL/crypto.py
+++ b/src/OpenSSL/crypto.py
@@ -2523,13 +2523,15 @@ class _PassphraseHelper(object):
)
def raise_if_problem(self, exceptionType=Error):
- try:
- _exception_from_error_queue(exceptionType)
- except exceptionType as e:
- from_queue = e
if self._problems:
- raise self._problems[0]
- return from_queue
+
+ # Flush the OpenSSL error queue
+ try:
+ _exception_from_error_queue(exceptionType)
+ except exceptionType:
+ pass
+
+ raise self._problems.pop(0)
def _read_passphrase(self, buf, size, rwflag, userdata):
try: