mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-30 16:17:02 +01:00
g10: Push compress filter only if compressed.
* g10/compress.c (handle_compressed): Fix memory leak. -- All other calls of push_compress_filter checks ALGO, so, do it here, too. GnuPG-bug-id: 3898 Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
parent
40fcddd3a9
commit
c31abf8465
@ -309,15 +309,18 @@ int
|
||||
handle_compressed (ctrl_t ctrl, void *procctx, PKT_compressed *cd,
|
||||
int (*callback)(IOBUF, void *), void *passthru )
|
||||
{
|
||||
compress_filter_context_t *cfx;
|
||||
int rc;
|
||||
|
||||
if(check_compress_algo(cd->algorithm))
|
||||
return GPG_ERR_COMPR_ALGO;
|
||||
cfx = xmalloc_clear (sizeof *cfx);
|
||||
cfx->release = release_context;
|
||||
cfx->algo = cd->algorithm;
|
||||
push_compress_filter(cd->buf,cfx,cd->algorithm);
|
||||
if(cd->algorithm) {
|
||||
compress_filter_context_t *cfx;
|
||||
|
||||
cfx = xmalloc_clear (sizeof *cfx);
|
||||
cfx->release = release_context;
|
||||
cfx->algo = cd->algorithm;
|
||||
push_compress_filter(cd->buf,cfx,cd->algorithm);
|
||||
}
|
||||
if( callback )
|
||||
rc = callback(cd->buf, passthru );
|
||||
else
|
||||
|
Loading…
x
Reference in New Issue
Block a user