mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
gpg: Fix minor memory leak in the compress filter.
* g10/compress.c (push_compress_filter2): Return an error if no filter was pushed. (push_compress_filter): Ditto. (handle_compressed): Free CFX if no filter was pushed. * g10/import.c (read_block): Ditto. -- GnuPG-bug-id: 3898, 3930 Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
f7f3043653
commit
d26363e4f1
3 changed files with 21 additions and 9 deletions
|
@ -767,7 +767,7 @@ valid_keyblock_packet (int pkttype)
|
|||
* Meta data (ring trust packets) are only considered of WITH_META is set.
|
||||
* PENDING_PKT should be initialized to NULL and not changed by the caller.
|
||||
* Return: 0 = okay, -1 no more blocks or another errorcode.
|
||||
* The int at at R_V3KEY counts the number of unsupported v3
|
||||
* The int at R_V3KEY counts the number of unsupported v3
|
||||
* keyblocks.
|
||||
*/
|
||||
static int
|
||||
|
@ -856,7 +856,9 @@ read_block( IOBUF a, int with_meta,
|
|||
{
|
||||
compress_filter_context_t *cfx = xmalloc_clear( sizeof *cfx );
|
||||
pkt->pkt.compressed->buf = NULL;
|
||||
push_compress_filter2(a,cfx,pkt->pkt.compressed->algorithm,1);
|
||||
if (push_compress_filter2 (a, cfx,
|
||||
pkt->pkt.compressed->algorithm, 1))
|
||||
xfree (cfx); /* e.g. in case of compression_algo NONE. */
|
||||
}
|
||||
free_packet (pkt, &parsectx);
|
||||
init_packet(pkt);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue