Module: wine Branch: master Commit: a26b82fc32f3ba7a90ce2cd24d9a5d5f96bae32f URL: http://source.winehq.org/git/wine.git/?a=commit;h=a26b82fc32f3ba7a90ce2cd24d...
Author: Andrew Eikum aeikum@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;