Piotr Caban : urlmon: Fixed UriBuilderFactory IUnknown implementation.
Alexandre Julliard
julliard at winehq.org
Thu Jan 12 13:19:24 CST 2012
Module: wine
Branch: master
Commit: e6b2b580bf31b0111fb63f1a5f9d2fa0c4d7936d
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e6b2b580bf31b0111fb63f1a5f9d2fa0c4d7936d
Author: Piotr Caban <piotr at 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,
More information about the wine-cvs
mailing list