mirror of
https://github.com/postgres/postgres.git
synced 2025-05-22 00:02:02 -04:00
Fix memory leak in pg_restore with zstd-compressed data.
EndCompressorZstd() neglected to free everything. This was most visible with a lot of large objects in the dump. Per report from Tomasz Szypowski. Back-patch to v16 where this code came in. Discussion: https://postgr.es/m/DU0PR04MB94193D038A128EF989F922D199042@DU0PR04MB9419.eurprd04.prod.outlook.com
This commit is contained in:
parent
18452b70ac
commit
04b8601981
@ -137,9 +137,10 @@ EndCompressorZstd(ArchiveHandle *AH, CompressorState *cs)
|
||||
Assert(zstdcs->dstream == NULL);
|
||||
_ZstdWriteCommon(AH, cs, true);
|
||||
ZSTD_freeCStream(zstdcs->cstream);
|
||||
pg_free(zstdcs->output.dst);
|
||||
}
|
||||
|
||||
/* output buffer may be allocated in either mode */
|
||||
pg_free(zstdcs->output.dst);
|
||||
pg_free(zstdcs);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user