quartz/vmr9: Allow the aspect ratio parameters to be NULL in IVMRWindowlessControl9::GetNativeVideoSize().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
f44e90d284
commit
45789e00da
|
@ -3808,9 +3808,9 @@ static void test_windowless_size(void)
|
||||||
|
|
||||||
width = height = 0xdeadbeef;
|
width = height = 0xdeadbeef;
|
||||||
hr = IVMRWindowlessControl9_GetNativeVideoSize(windowless_control, &width, &height, NULL, NULL);
|
hr = IVMRWindowlessControl9_GetNativeVideoSize(windowless_control, &width, &height, NULL, NULL);
|
||||||
todo_wine ok(hr == S_OK, "Got hr %#x.\n", hr);
|
ok(hr == S_OK, "Got hr %#x.\n", hr);
|
||||||
todo_wine ok(width == 32, "Got width %d.\n", width);
|
ok(width == 32, "Got width %d.\n", width);
|
||||||
todo_wine ok(height == 16, "Got height %d.\n", height);
|
ok(height == 16, "Got height %d.\n", height);
|
||||||
|
|
||||||
aspect_width = aspect_height = 0xdeadbeef;
|
aspect_width = aspect_height = 0xdeadbeef;
|
||||||
hr = IVMRWindowlessControl9_GetNativeVideoSize(windowless_control, &width, &height, &aspect_width, &aspect_height);
|
hr = IVMRWindowlessControl9_GetNativeVideoSize(windowless_control, &width, &height, &aspect_width, &aspect_height);
|
||||||
|
|
|
@ -1615,21 +1615,23 @@ static ULONG WINAPI VMR9WindowlessControl_Release(IVMRWindowlessControl9 *iface)
|
||||||
return IUnknown_Release(This->renderer.filter.outer_unk);
|
return IUnknown_Release(This->renderer.filter.outer_unk);
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI VMR9WindowlessControl_GetNativeVideoSize(IVMRWindowlessControl9 *iface, LONG *width, LONG *height, LONG *arwidth, LONG *arheight)
|
static HRESULT WINAPI VMR9WindowlessControl_GetNativeVideoSize(IVMRWindowlessControl9 *iface,
|
||||||
|
LONG *width, LONG *height, LONG *aspect_width, LONG *aspect_height)
|
||||||
{
|
{
|
||||||
struct quartz_vmr *This = impl_from_IVMRWindowlessControl9(iface);
|
struct quartz_vmr *filter = impl_from_IVMRWindowlessControl9(iface);
|
||||||
TRACE("(%p/%p)->(%p, %p, %p, %p)\n", iface, This, width, height, arwidth, arheight);
|
|
||||||
|
|
||||||
if (!width || !height || !arwidth || !arheight)
|
TRACE("filter %p, width %p, height %p, aspect_width %p, aspect_height %p.\n",
|
||||||
{
|
filter, width, height, aspect_width, aspect_height);
|
||||||
ERR("Got no pointer\n");
|
|
||||||
|
if (!width || !height)
|
||||||
return E_POINTER;
|
return E_POINTER;
|
||||||
}
|
|
||||||
|
|
||||||
*width = This->bmiheader.biWidth;
|
*width = filter->bmiheader.biWidth;
|
||||||
*height = This->bmiheader.biHeight;
|
*height = filter->bmiheader.biHeight;
|
||||||
*arwidth = This->bmiheader.biWidth;
|
if (aspect_width)
|
||||||
*arheight = This->bmiheader.biHeight;
|
*aspect_width = filter->bmiheader.biWidth;
|
||||||
|
if (aspect_height)
|
||||||
|
*aspect_height = filter->bmiheader.biHeight;
|
||||||
|
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue