From c9e3c27f0d25fdd16b9c740dfd76785ad36a2938 Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Mon, 28 Dec 2009 21:19:29 +0100 Subject: [PATCH] mshtml: Use FindMimeFromData to find MIME if moniker doesn't report it. --- dlls/mshtml/navigate.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/dlls/mshtml/navigate.c b/dlls/mshtml/navigate.c index e17d48d4760..7cfc10eec23 100644 --- a/dlls/mshtml/navigate.c +++ b/dlls/mshtml/navigate.c @@ -952,6 +952,21 @@ static HRESULT read_stream_data(nsChannelBSC *This, IStream *stream) && (BYTE)This->nsstream->buf[1] == 0xfe) This->nschannel->charset = heap_strdupA(UTF16_STR); + if(!This->nschannel->content_type) { + WCHAR *mime; + + hres = FindMimeFromData(NULL, NULL, This->nsstream->buf, This->nsstream->buf_size, NULL, 0, &mime, 0); + if(FAILED(hres)) + return hres; + + TRACE("Found MIME %s\n", debugstr_w(mime)); + + This->nschannel->content_type = heap_strdupWtoA(mime); + CoTaskMemFree(mime); + if(!This->nschannel->content_type) + return E_OUTOFMEMORY; + } + on_start_nsrequest(This); if(This->window)