diff options
Diffstat (limited to 'src/keysign.c')
-rw-r--r-- | src/keysign.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/keysign.c b/src/keysign.c index 44ab5ff2..1a3c8a54 100644 --- a/src/keysign.c +++ b/src/keysign.c @@ -113,7 +113,9 @@ keysign_status_handler (void *priv, gpgme_status_code_t code, char *args) break; case GPGME_STATUS_FAILURE: - opd->failure_code = _gpgme_parse_failure (args); + if (!opd->failure_code + || gpg_err_code (opd->failure_code) == GPG_ERR_GENERAL) + opd->failure_code = _gpgme_parse_failure (args); break; case GPGME_STATUS_EOF: |