In addition to 41cfc86d8dd65c71a7c81b826d02ac0a99050d6a. This fixes another crash when browsing help file that I have here. Signed-off-by: Dmitry Timoshkov <dmitry(a)baikal.ru> --- dlls/ieframe/dochost.c | 4 ++-- dlls/ieframe/ieframe.h | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/dlls/ieframe/dochost.c b/dlls/ieframe/dochost.c index 7717f786d52..4e1e1d82fa1 100644 --- a/dlls/ieframe/dochost.c +++ b/dlls/ieframe/dochost.c @@ -436,7 +436,7 @@ static void update_travellog(DocHost *This) } if(!This->travellog.log) { - This->travellog.log = heap_alloc(4 * sizeof(*This->travellog.log)); + This->travellog.log = heap_alloc_zero(4 * sizeof(*This->travellog.log)); if(!This->travellog.log) return; @@ -444,7 +444,7 @@ static void update_travellog(DocHost *This) }else if(This->travellog.size < This->travellog.position+1) { travellog_entry_t *new_travellog; - new_travellog = heap_realloc(This->travellog.log, This->travellog.size*2*sizeof(*This->travellog.log)); + new_travellog = heap_realloc_zero(This->travellog.log, This->travellog.size*2*sizeof(*This->travellog.log)); if(!new_travellog) return; diff --git a/dlls/ieframe/ieframe.h b/dlls/ieframe/ieframe.h index 633906a70ca..1bae1f6781d 100644 --- a/dlls/ieframe/ieframe.h +++ b/dlls/ieframe/ieframe.h @@ -340,6 +340,11 @@ static inline void unlock_module(void) { InterlockedDecrement(&module_ref); } +static inline void * __WINE_ALLOC_SIZE(2) heap_realloc_zero(void *mem, SIZE_T len) +{ + return HeapReAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, mem, len); +} + static inline LPWSTR heap_strdupW(LPCWSTR str) { LPWSTR ret = NULL; -- 2.35.3