cabinet: Fixed free_decompression_temps/_mem , handle NULL (Coverity).

This commit is contained in:
Marcus Meissner 2009-10-18 21:31:59 +02:00 committed by Alexandre Julliard
parent e77bef234a
commit 87118d00fe
1 changed files with 5 additions and 4 deletions

View File

@ -2279,9 +2279,10 @@ static void free_decompression_temps(HFDI hfdi, const struct fdi_folder *fol,
}
}
static void free_decompression_mem(HFDI hfdi, struct fdi_folder *fol,
static void free_decompression_mem(HFDI hfdi,
fdi_decomp_state *decomp_state, struct fdi_file *file)
{
struct fdi_folder *fol;
while (decomp_state) {
fdi_decomp_state *prev_fds;
@ -2896,17 +2897,17 @@ BOOL __cdecl FDICopy(
}
free_decompression_temps(hfdi, fol, decomp_state);
free_decompression_mem(hfdi, fol, decomp_state, file);
free_decompression_mem(hfdi, decomp_state, file);
return TRUE;
bail_and_fail: /* here we free ram before error returns */
free_decompression_temps(hfdi, fol, decomp_state);
if (fol) free_decompression_temps(hfdi, fol, decomp_state);
if (filehf) PFDI_CLOSE(hfdi, filehf);
free_decompression_mem(hfdi, fol, decomp_state, file);
free_decompression_mem(hfdi, decomp_state, file);
return FALSE;
}