From 8ce01c38c701dca8a8114c0bea916a5b497c9756 Mon Sep 17 00:00:00 2001 From: Alibek Omarov Date: Wed, 22 Jan 2025 13:49:24 +0300 Subject: [PATCH] engine: http: ensure we don't write broken decompressed files --- engine/common/net_http.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/engine/common/net_http.c b/engine/common/net_http.c index 8a79d879..f824af7c 100644 --- a/engine/common/net_http.c +++ b/engine/common/net_http.c @@ -505,11 +505,14 @@ static int HTTP_FileDecompress( httpfile_t *file ) if( zlib_result == Z_OK || zlib_result == Z_STREAM_END ) { - Mem_Free( data_in ); + g_fsapi.WriteFile( name, data_out, decompressed_len ); + HTTP_FreeFile( file, false ); } + else HTTP_FreeFile( file, true ); + + Mem_Free( data_in ); + Mem_Free( data_out ); - g_fsapi.WriteFile( name, data_out, decompressed_len ); - HTTP_FreeFile( file, false ); return 1; }