From e9189df9a607c7b901b3e553ea8221b08388c136 Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Thu, 31 Jan 2008 18:16:31 +0100 Subject: [PATCH] urlmon: Don't create stgmed_obj for binding to object. --- dlls/urlmon/binding.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/dlls/urlmon/binding.c b/dlls/urlmon/binding.c index b574c966b1..230a9904de 100644 --- a/dlls/urlmon/binding.c +++ b/dlls/urlmon/binding.c @@ -1458,11 +1458,6 @@ static HRESULT Binding_Create(IMoniker *mon, Binding *binding_ctx, LPCWSTR url, Binding *ret; HRESULT hres; - if(!to_obj && !IsEqualGUID(&IID_IStream, riid)) { - FIXME("Unsupported riid %s\n", debugstr_guid(riid)); - return E_NOTIMPL; - } - URLMON_LockModule(); ret = heap_alloc_zero(sizeof(Binding)); @@ -1545,7 +1540,15 @@ static HRESULT Binding_Create(IMoniker *mon, Binding *binding_ctx, LPCWSTR url, ret->stgmed_buf = create_stgmed_buf(ret->protocol); } - ret->stgmed_obj = create_stgmed_stream(ret->stgmed_buf); + if(to_obj) { + ret->stgmed_obj = NULL; + }else if(IsEqualGUID(&IID_IStream, riid)) { + ret->stgmed_obj = create_stgmed_stream(ret->stgmed_buf); + }else { + FIXME("Unsupported riid %s\n", debugstr_guid(riid)); + IBinding_Release(BINDING(ret)); + return E_NOTIMPL; + } *binding = ret; return S_OK; -- 2.32.0.93.g670b81a890