mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-09-16 01:03:31 +00:00
hw/core/loader: gunzip(): fix memory leak on error path
We should call inflateEnd() like on success path to cleanup state in s variable. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> Reviewed-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
parent
412d294ffd
commit
f22855dffd
|
@ -610,6 +610,7 @@ ssize_t gunzip(void *dst, size_t dstlen, uint8_t *src, size_t srclen)
|
||||||
r = inflate(&s, Z_FINISH);
|
r = inflate(&s, Z_FINISH);
|
||||||
if (r != Z_OK && r != Z_STREAM_END) {
|
if (r != Z_OK && r != Z_STREAM_END) {
|
||||||
printf ("Error: inflate() returned %d\n", r);
|
printf ("Error: inflate() returned %d\n", r);
|
||||||
|
inflateEnd(&s);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
dstbytes = s.next_out - (unsigned char *) dst;
|
dstbytes = s.next_out - (unsigned char *) dst;
|
||||||
|
|
Loading…
Reference in a new issue