diff --git a/TODO b/TODO index e7d37fc0..ec2f2e19 100644 --- a/TODO +++ b/TODO @@ -21,6 +21,8 @@ Hey Emacs, this is -*- outline -*- mode! (it's an internal error, as select_protocol checks already). ** When server mode is implemented properly, more care has to be taken to release all resources on error (for example to free assuan_cmd). +** GnuPG +*** For pipemode, make sure to release the pipemode callback data object. * Operations ** Export status handler need much more work. diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog index 0761eced..c7485ba8 100644 --- a/gpgme/ChangeLog +++ b/gpgme/ChangeLog @@ -1,3 +1,8 @@ +2002-04-25 Marcus Brinkmann + + * rungpg.c (_gpgme_gpg_release): Call gpgme_data_release on + GPG->cmd.cb_data, not xfree. + 2002-04-25 Marcus Brinkmann * engine-gpgsm.c (_gpgme_gpgsm_new): Set the display, ttyname, diff --git a/gpgme/rungpg.c b/gpgme/rungpg.c index 797ae43f..668ed267 100644 --- a/gpgme/rungpg.c +++ b/gpgme/rungpg.c @@ -264,7 +264,7 @@ _gpgme_gpg_release (GpgObject gpg) xfree (gpg->colon.buffer); if (gpg->argv) free_argv (gpg->argv); - xfree (gpg->cmd.cb_data); + gpgme_data_release (gpg->cmd.cb_data); xfree (gpg->cmd.keyword); if (gpg->pid != -1)