Andrew Eikum : mshtml: Add helper function get_url_components.
Module: wine Branch: master Commit: a26b82fc32f3ba7a90ce2cd24d9a5d5f96bae32f URL: http://source.winehq.org/git/wine.git/?a=commit;h=a26b82fc32f3ba7a90ce2cd24d... Author: Andrew Eikum <aeikum(a)codeweavers.com> Date: Wed Oct 14 16:33:21 2009 -0500 mshtml: Add helper function get_url_components. --- dlls/mshtml/htmllocation.c | 24 ++++++++++++++++++++---- 1 files changed, 20 insertions(+), 4 deletions(-) diff --git a/dlls/mshtml/htmllocation.c b/dlls/mshtml/htmllocation.c index 891e7b8..4769f03 100644 --- a/dlls/mshtml/htmllocation.c +++ b/dlls/mshtml/htmllocation.c @@ -46,6 +46,23 @@ static HRESULT get_url(HTMLLocation *This, const WCHAR **ret) return S_OK; } +static HRESULT get_url_components(HTMLLocation *This, URL_COMPONENTSW *url) +{ + const WCHAR *doc_url; + HRESULT hres; + + hres = get_url(This, &doc_url); + if(FAILED(hres)) + return hres; + + if(!InternetCrackUrlW(doc_url, 0, 0, url)) { + FIXME("InternetCrackUrlW failed: 0x%08x\n", GetLastError()); + SetLastError(0); + return E_FAIL; + } + + return S_OK; +} #define HTMLLOCATION_THIS(iface) DEFINE_THIS(HTMLLocation, HTMLLocation, iface) @@ -270,10 +287,9 @@ static HRESULT WINAPI HTMLLocation_get_pathname(IHTMLLocation *iface, BSTR *p) } url.dwUrlPathLength = 1; - if(!InternetCrackUrlW(doc_url, 0, 0, &url)) { - FIXME("InternetCrackUrl failed\n"); - return E_FAIL; - } + hres = get_url_components(This, &url); + if(FAILED(hres)) + return hres; if(!url.dwUrlPathLength) { *p = NULL;
participants (1)
-
Alexandre Julliard