update_travellog() in order to clear forward history calls free_travellog_entry() to invalidate forward history entries, and when later an entry gets reused entry->stream contains a no longer valid pointer.
This is an alternative patch that fixes a crash while navigating html help file that I have here.
Signed-off-by: Dmitry Timoshkov dmitry@baikal.ru --- dlls/ieframe/dochost.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/dlls/ieframe/dochost.c b/dlls/ieframe/dochost.c index 042417b5b17..1ba31c552ed 100644 --- a/dlls/ieframe/dochost.c +++ b/dlls/ieframe/dochost.c @@ -384,9 +384,12 @@ static LRESULT WINAPI doc_view_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM l
static void free_travellog_entry(travellog_entry_t *entry) { - if(entry->stream) + if(entry->stream) { IStream_Release(entry->stream); + entry->stream = NULL; + } heap_free(entry->url); + entry->url = NULL; }
static IStream *get_travellog_stream(DocHost *This)