2001-11-11 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (_gpgme_gpg_release): Release GPG->cmd.cb_data. Release all members of the list GPG->arglist. Reported by Michael Schmidt <mschmidt@cs.uni-sb.de>.
This commit is contained in:
parent
1ecdde3ced
commit
49a25a82e2
@ -1,3 +1,9 @@
|
||||
2001-11-11 Marcus Brinkmann <marcus@g10code.de>
|
||||
|
||||
* rungpg.c (_gpgme_gpg_release): Release GPG->cmd.cb_data.
|
||||
Release all members of the list GPG->arglist.
|
||||
Reported by Michael Schmidt <mschmidt@cs.uni-sb.de>.
|
||||
|
||||
2001-11-02 Marcus Brinkmann <marcus@g10code.de>
|
||||
|
||||
* rungpg.c (pipemode_copy): Change type of NBYTES to size_t.
|
||||
|
@ -248,10 +248,20 @@ _gpgme_gpg_release ( GpgObject gpg )
|
||||
{
|
||||
if (!gpg)
|
||||
return;
|
||||
|
||||
while (gpg->arglist)
|
||||
{
|
||||
struct arg_and_data_s *next = gpg->arglist->next;
|
||||
|
||||
xfree (gpg->arglist);
|
||||
gpg->arglist = next;
|
||||
}
|
||||
|
||||
xfree (gpg->status.buffer);
|
||||
xfree (gpg->colon.buffer);
|
||||
if (gpg->argv)
|
||||
free_argv (gpg->argv);
|
||||
xfree (gpg->cmd.cb_data);
|
||||
xfree (gpg->cmd.keyword);
|
||||
|
||||
if (gpg->pid != -1)
|
||||
@ -265,12 +275,13 @@ _gpgme_gpg_release ( GpgObject gpg )
|
||||
if (gpg->colon.fd[1] != -1)
|
||||
_gpgme_io_close (gpg->colon.fd[1]);
|
||||
free_fd_data_map (gpg->fd_data_map);
|
||||
if (gpg->running) {
|
||||
if (gpg->running)
|
||||
{
|
||||
int pid = gpg->pid;
|
||||
struct reap_s *r;
|
||||
|
||||
/* resuse the memory, so that we don't need to allocate another
|
||||
* mem block and have to handle errors */
|
||||
/* Reuse the memory, so that we don't need to allocate another
|
||||
memory block and to handle errors. */
|
||||
assert (sizeof *r < sizeof *gpg);
|
||||
r = (void*)gpg;
|
||||
memset (r, 0, sizeof *r);
|
||||
|
Loading…
Reference in New Issue
Block a user