Module: wine Branch: master Commit: 5444ce2f0db7b3f7b4e1fdf3f7bb8d18b79f315b URL: https://source.winehq.org/git/wine.git/?a=commit;h=5444ce2f0db7b3f7b4e1fdf3f...
Author: Zebediah Figura zfigura@codeweavers.com Date: Fri Jun 12 16:28:28 2020 -0500
quartz/vmr9: Get rid of VMR9_ImagePresenter_PresentOffscreenSurface().
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/quartz/vmr9.c | 31 ++++++++++--------------------- 1 file changed, 10 insertions(+), 21 deletions(-)
diff --git a/dlls/quartz/vmr9.c b/dlls/quartz/vmr9.c index 449943f2dc..6b653e5609 100644 --- a/dlls/quartz/vmr9.c +++ b/dlls/quartz/vmr9.c @@ -2611,26 +2611,6 @@ static HRESULT WINAPI VMR9_ImagePresenter_StopPresenting(IVMRImagePresenter9 *if return S_OK; }
-static HRESULT VMR9_ImagePresenter_PresentOffscreenSurface(struct default_presenter *This, IDirect3DSurface9 *surface) -{ - HRESULT hr; - IDirect3DSurface9 *target = NULL; - - hr = IDirect3DDevice9_GetBackBuffer(This->d3d9_dev, 0, 0, D3DBACKBUFFER_TYPE_MONO, &target); - if (FAILED(hr)) - { - ERR("IDirect3DDevice9_GetBackBuffer -- %08x\n", hr); - return hr; - } - - hr = IDirect3DDevice9_StretchRect(This->d3d9_dev, surface, NULL, target, NULL, D3DTEXF_POINT); - if (FAILED(hr)) - ERR("IDirect3DDevice9_StretchRect -- %08x\n", hr); - IDirect3DSurface9_Release(target); - - return hr; -} - static HRESULT WINAPI VMR9_ImagePresenter_PresentImage(IVMRImagePresenter9 *iface, DWORD_PTR cookie, VMR9PresentationInfo *info) { @@ -2638,6 +2618,7 @@ static HRESULT WINAPI VMR9_ImagePresenter_PresentImage(IVMRImagePresenter9 *ifac const struct quartz_vmr *filter = presenter->pVMR9; IDirect3DDevice9 *device = presenter->d3d9_dev; const RECT src = filter->window.src; + IDirect3DSurface9 *backbuffer; RECT dst = filter->window.dst; HRESULT hr;
@@ -2654,7 +2635,15 @@ static HRESULT WINAPI VMR9_ImagePresenter_PresentImage(IVMRImagePresenter9 *ifac if (FAILED(hr = IDirect3DDevice9_BeginScene(device))) ERR("Failed to begin scene, hr %#x.\n", hr);
- VMR9_ImagePresenter_PresentOffscreenSurface(presenter, info->lpSurf); + if (FAILED(hr = IDirect3DDevice9_GetBackBuffer(device, 0, 0, D3DBACKBUFFER_TYPE_MONO, &backbuffer))) + { + ERR("Failed to get backbuffer, hr %#x.\n", hr); + return hr; + } + + if (FAILED(hr = IDirect3DDevice9_StretchRect(device, info->lpSurf, NULL, backbuffer, NULL, D3DTEXF_POINT))) + ERR("Failed to blit image, hr %#x.\n", hr); + IDirect3DSurface9_Release(backbuffer);
if (FAILED(hr = IDirect3DDevice9_EndScene(device))) ERR("Failed to end scene, hr %#x.\n", hr);