winhelp: Fix a memory leak
Andrew Talbot
andrew.talbot at talbotville.com
Thu Oct 25 14:07:47 CDT 2007
Changelog:
winhelp: Fix a memory leak.
diff --git a/programs/winhelp/hlpfile.c b/programs/winhelp/hlpfile.c
index 8882a1a..3c34a06 100644
--- a/programs/winhelp/hlpfile.c
+++ b/programs/winhelp/hlpfile.c
@@ -860,7 +860,7 @@ static BOOL HLPFILE_AddParagraph(HLPFILE
HLPFILE_PARAGRAPH *paragraph, **paragraphptr;
UINT textsize;
BYTE *format, *format_end;
- char *text, *text_end;
+ char *text, *text_base, *text_end;
long size;
unsigned short bits;
unsigned nc, ncol = 1;
@@ -874,7 +874,7 @@ static BOOL HLPFILE_AddParagraph(HLPFILE
if (buf + 0x19 > end) {WINE_WARN("header too small\n"); return FALSE;};
size = GET_UINT(buf, 0x4);
- text = HeapAlloc(GetProcessHeap(), 0, size);
+ text = text_base = HeapAlloc(GetProcessHeap(), 0, size);
if (!text) return FALSE;
if (hlpfile->hasPhrases)
{
@@ -1164,8 +1164,7 @@ static BOOL HLPFILE_AddParagraph(HLPFILE
}
}
}
- if (text_end != (char*)buf + GET_UINT(buf, 0x10) + size)
- HeapFree(GetProcessHeap(), 0, text_end - size);
+ HeapFree(GetProcessHeap(), 0, text_base);
return TRUE;
}
More information about the wine-patches
mailing list