forked from Mirrors/wine-wine
wmp: Make it possible to query IUnknown from IWMPControls.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>oldstable
parent
ca9b1d0077
commit
f9ea009fe9
|
@ -1365,7 +1365,9 @@ static const IWMPNetworkVtbl WMPNetworkVtbl = {
|
||||||
|
|
||||||
static HRESULT WINAPI WMPControls_QueryInterface(IWMPControls *iface, REFIID riid, void **ppv)
|
static HRESULT WINAPI WMPControls_QueryInterface(IWMPControls *iface, REFIID riid, void **ppv)
|
||||||
{
|
{
|
||||||
if(IsEqualGUID(riid, &IID_IDispatch)) {
|
if(IsEqualGUID(riid, &IID_IUnknown)) {
|
||||||
|
*ppv = iface;
|
||||||
|
}else if(IsEqualGUID(riid, &IID_IDispatch)) {
|
||||||
*ppv = iface;
|
*ppv = iface;
|
||||||
}else if(IsEqualGUID(riid, &IID_IWMPControls)) {
|
}else if(IsEqualGUID(riid, &IID_IWMPControls)) {
|
||||||
*ppv = iface;
|
*ppv = iface;
|
||||||
|
|
|
@ -889,7 +889,6 @@ static void test_ConnectionPoint(IOleObject *unk)
|
||||||
IConnectionPoint_Release(point);
|
IConnectionPoint_Release(point);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void test_wmp_ifaces(IOleObject *oleobj)
|
static void test_wmp_ifaces(IOleObject *oleobj)
|
||||||
{
|
{
|
||||||
IWMPSettings *settings, *settings_qi;
|
IWMPSettings *settings, *settings_qi;
|
||||||
|
@ -899,6 +898,7 @@ static void test_wmp_ifaces(IOleObject *oleobj)
|
||||||
IWMPControls *controls;
|
IWMPControls *controls;
|
||||||
VARIANT_BOOL vbool;
|
VARIANT_BOOL vbool;
|
||||||
IWMPNetwork *network;
|
IWMPNetwork *network;
|
||||||
|
IUnknown *unk;
|
||||||
HRESULT hres;
|
HRESULT hres;
|
||||||
BSTR filename;
|
BSTR filename;
|
||||||
BSTR url;
|
BSTR url;
|
||||||
|
@ -913,9 +913,15 @@ static void test_wmp_ifaces(IOleObject *oleobj)
|
||||||
|
|
||||||
player = NULL;
|
player = NULL;
|
||||||
hres = IWMPControls_QueryInterface(controls, &IID_IWMPPlayer, (void**)&player);
|
hres = IWMPControls_QueryInterface(controls, &IID_IWMPPlayer, (void**)&player);
|
||||||
ok(hres != S_OK, "Getting IWMPPlayer from IWMPControls SUCCEEDED\n");
|
ok(hres == E_NOINTERFACE, "Getting IWMPPlayer from IWMPControls SUCCEEDED\n");
|
||||||
ok(player == NULL, "player != NULL\n");
|
ok(player == NULL, "player != NULL\n");
|
||||||
|
|
||||||
|
unk = NULL;
|
||||||
|
hres = IWMPControls_QueryInterface(controls, &IID_IUnknown, (void **)&unk);
|
||||||
|
ok(hres == S_OK, "Failed to get IUnknown, hr %#x.\n", hres);
|
||||||
|
ok(unk != NULL, "Unexpected interface pointer.\n");
|
||||||
|
IUnknown_Release(unk);
|
||||||
|
|
||||||
IWMPControls_Release(controls);
|
IWMPControls_Release(controls);
|
||||||
|
|
||||||
/* IWPNetwork */
|
/* IWPNetwork */
|
||||||
|
|
Loading…
Reference in New Issue