Zebediah Figura : quartz/vmr9: Get rid of VMR9_ImagePresenter_PresentOffscreenSurface().
Alexandre Julliard
julliard at winehq.org
Mon Jun 15 15:03:05 CDT 2020
Module: wine
Branch: master
Commit: 5444ce2f0db7b3f7b4e1fdf3f7bb8d18b79f315b
URL: https://source.winehq.org/git/wine.git/?a=commit;h=5444ce2f0db7b3f7b4e1fdf3f7bb8d18b79f315b
Author: Zebediah Figura <zfigura at 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 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at 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);
More information about the wine-cvs
mailing list