diff --git a/dlls/mshtml/htmldoc.c b/dlls/mshtml/htmldoc.c index 95b0100fd06..8144092a9f7 100644 --- a/dlls/mshtml/htmldoc.c +++ b/dlls/mshtml/htmldoc.c @@ -1763,7 +1763,6 @@ static void destroy_htmldoc(HTMLDocument *This) if(This->event_target) release_event_target(This->event_target); - heap_free(This->mime); release_nodes(This); release_dispex(&This->dispex); @@ -1894,6 +1893,7 @@ static ULONG HTMLDocumentObj_Release(HTMLDocument *base) if(This->hwnd) DestroyWindow(This->hwnd); + heap_free(This->mime); destroy_htmldoc(&This->basedoc); diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index c8d1c61307a..d5fcd8d29f1 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -284,8 +284,6 @@ struct HTMLDocument { HTMLWindow *window; nsIDOMHTMLDocument *nsdoc; - LPWSTR mime; - DWORD update; event_target_t *event_target; @@ -350,6 +348,7 @@ struct HTMLDocumentObj { USERMODE usermode; READYSTATE readystate; + LPWSTR mime; /* FIXME: probably should be in document node object */ nsChannelBSC *bscallback; diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c index ee3df0d7053..d7fe4a9e1d4 100644 --- a/dlls/mshtml/nsio.c +++ b/dlls/mshtml/nsio.c @@ -708,9 +708,9 @@ static nsresult async_open_doc_uri(nsChannel *This, NSContainer *container, if(container->bscallback) { channelbsc_set_channel(container->bscallback, This, listener, context); - if(container->doc && container->doc->basedoc.mime) { + if(container->doc && container->doc->mime) { heap_free(This->content_type); - This->content_type = heap_strdupWtoA(container->doc->basedoc.mime); + This->content_type = heap_strdupWtoA(container->doc->mime); } return NS_OK; diff --git a/dlls/mshtml/persist.c b/dlls/mshtml/persist.c index 0ce29c4d5b5..f89cde8afcd 100644 --- a/dlls/mshtml/persist.c +++ b/dlls/mshtml/persist.c @@ -370,8 +370,8 @@ static HRESULT WINAPI MonikerProp_PutProperty(IMonikerProp *iface, MONIKERPROPER switch(mkp) { case MIMETYPEPROP: - heap_free(This->mime); - This->mime = heap_strdupW(val); + heap_free(This->doc_obj->mime); + This->doc_obj->mime = heap_strdupW(val); break; case CLASSIDPROP: