Module: wine Branch: master Commit: 5030554ccd5237ccc209172bdb7f7ceb7408261f URL: http://source.winehq.org/git/wine.git/?a=commit;h=5030554ccd5237ccc209172bdb...
Author: Jacek Caban jacek@codeweavers.com Date: Thu Nov 25 13:56:25 2010 +0100
mshtml: Don't use wine_url in nsIURI::SchemeIs implementation.
---
dlls/mshtml/nsio.c | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c index 13085e6..412b1d4 100644 --- a/dlls/mshtml/nsio.c +++ b/dlls/mshtml/nsio.c @@ -2037,15 +2037,20 @@ static nsresult NSAPI nsURI_SchemeIs(nsIURL *iface, const char *scheme, PRBool * { nsWineURI *This = NSURI_THIS(iface); WCHAR buf[INTERNET_MAX_SCHEME_LENGTH]; - int len; + BSTR scheme_name; + HRESULT hres;
TRACE("(%p)->(%s %p)\n", This, debugstr_a(scheme), _retval);
- len = MultiByteToWideChar(CP_ACP, 0, scheme, -1, buf, sizeof(buf)/sizeof(WCHAR))-1; + if(!ensure_uri(This)) + return NS_ERROR_UNEXPECTED; + + hres = IUri_GetSchemeName(This->uri, &scheme_name); + if(FAILED(hres)) + return NS_ERROR_UNEXPECTED;
- *_retval = lstrlenW(This->wine_url) > len - && This->wine_url[len] == ':' - && !memcmp(buf, This->wine_url, len*sizeof(WCHAR)); + MultiByteToWideChar(CP_ACP, 0, scheme, -1, buf, sizeof(buf)/sizeof(WCHAR)); + *_retval = !strcmpW(scheme_name, buf); return NS_OK; }