Module: wine Branch: master Commit: d3972880c0170a0539db7ed0a5e6db41f4ea1b62 URL: http://source.winehq.org/git/wine.git/?a=commit;h=d3972880c0170a0539db7ed0a5... Author: Andrew Talbot <Andrew.Talbot(a)talbotville.com> Date: Thu Jan 4 16:57:54 2007 +0000 widl: Fix memory leaks. --- tools/widl/write_msft.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/tools/widl/write_msft.c b/tools/widl/write_msft.c index a624e6d..b2ec44a 100644 --- a/tools/widl/write_msft.c +++ b/tools/widl/write_msft.c @@ -2525,7 +2525,11 @@ int create_msft_typelib(typelib_t *typel if (ctl2_alloc_segment(msft, MSFT_SEG_GUIDHASH, 0x80, 0x80)) { failed = 1; } if (ctl2_alloc_segment(msft, MSFT_SEG_NAMEHASH, 0x200, 0x200)) { failed = 1; } - if(failed) return 0; + if(failed) + { + free(msft); + return 0; + } msft->typelib_guidhash_segment = (int *)msft->typelib_segment_data[MSFT_SEG_GUIDHASH]; msft->typelib_namehash_segment = (int *)msft->typelib_segment_data[MSFT_SEG_NAMEHASH]; @@ -2557,5 +2561,6 @@ int create_msft_typelib(typelib_t *typel add_entry(msft, entry); save_all_changes(msft); + free(msft); return 1; }