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 + + * 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 * 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; }