aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gpgme/ChangeLog5
-rw-r--r--gpgme/engine-gpgsm.c6
2 files changed, 10 insertions, 1 deletions
diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog
index 38f8f433..248a1d1b 100644
--- a/gpgme/ChangeLog
+++ b/gpgme/ChangeLog
@@ -1,3 +1,8 @@
+2004-03-11 Marcus Brinkmann <[email protected]>
+
+ * engine-gpgsm.c (gpgsm_cancel): Only call assuan_disconnect if
+ GPGSM->assuan_ctx is not NULL. Set it to NULL afterwards.
+
2004-03-07 Marcus Brinkmann <[email protected]>
* gpgme-config.in: Do not emit include and lib directory for
diff --git a/gpgme/engine-gpgsm.c b/gpgme/engine-gpgsm.c
index 11011318..bbcdb425 100644
--- a/gpgme/engine-gpgsm.c
+++ b/gpgme/engine-gpgsm.c
@@ -289,7 +289,11 @@ gpgsm_cancel (void *engine)
if (gpgsm->message_cb.fd != -1)
_gpgme_io_close (gpgsm->message_cb.fd);
- assuan_disconnect (gpgsm->assuan_ctx);
+ if (gpgsm->assuan_ctx)
+ {
+ assuan_disconnect (gpgsm->assuan_ctx);
+ gpgsm->assuan_ctx = NULL;
+ }
return 0;
}