Module: wine Branch: master Commit: e6b2b580bf31b0111fb63f1a5f9d2fa0c4d7936d URL: http://source.winehq.org/git/wine.git/?a=commit;h=e6b2b580bf31b0111fb63f1a5f...
Author: Piotr Caban piotr@codeweavers.com Date: Thu Jan 12 15:34:20 2012 +0100
urlmon: Fixed UriBuilderFactory IUnknown implementation.
---
dlls/urlmon/uri.c | 34 +++------------------------------- 1 files changed, 3 insertions(+), 31 deletions(-)
diff --git a/dlls/urlmon/uri.c b/dlls/urlmon/uri.c index 55488d9..d334b9e 100644 --- a/dlls/urlmon/uri.c +++ b/dlls/urlmon/uri.c @@ -5034,47 +5034,19 @@ static inline Uri* impl_from_IUriBuilderFactory(IUriBuilderFactory *iface) static HRESULT WINAPI UriBuilderFactory_QueryInterface(IUriBuilderFactory *iface, REFIID riid, void **ppv) { Uri *This = impl_from_IUriBuilderFactory(iface); - - if(IsEqualGUID(&IID_IUnknown, riid)) { - TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv); - *ppv = &This->IUriBuilderFactory_iface; - }else if(IsEqualGUID(&IID_IUriBuilderFactory, riid)) { - TRACE("(%p)->(IID_IUriBuilderFactory %p)\n", This, ppv); - *ppv = &This->IUriBuilderFactory_iface; - }else if(IsEqualGUID(&IID_IUri, riid)) { - TRACE("(%p)->(IID_IUri %p)\n", This, ppv); - *ppv = &This->IUri_iface; - }else { - TRACE("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv); - *ppv = NULL; - return E_NOINTERFACE; - } - - IUnknown_AddRef((IUnknown*)*ppv); - return S_OK; + return IUri_QueryInterface(&This->IUri_iface, riid, ppv); }
static ULONG WINAPI UriBuilderFactory_AddRef(IUriBuilderFactory *iface) { Uri *This = impl_from_IUriBuilderFactory(iface); - LONG ref = InterlockedIncrement(&This->ref); - - TRACE("(%p) ref=%d\n", This, ref); - - return ref; + return IUri_AddRef(&This->IUri_iface); }
static ULONG WINAPI UriBuilderFactory_Release(IUriBuilderFactory *iface) { Uri *This = impl_from_IUriBuilderFactory(iface); - LONG ref = InterlockedDecrement(&This->ref); - - TRACE("(%p) ref=%d\n", This, ref); - - if(!ref) - destory_uri_obj(This); - - return ref; + return IUri_Release(&This->IUri_iface); }
static HRESULT WINAPI UriBuilderFactory_CreateIUriBuilder(IUriBuilderFactory *iface,