Module: wine Branch: master Commit: 5f9ceed14f960b75d3cde57d95d55e85c5de16d2 URL: https://source.winehq.org/git/wine.git/?a=commit;h=5f9ceed14f960b75d3cde57d9...
Author: Jeff Smith whydoubt@gmail.com Date: Tue Jan 28 16:35:43 2020 +0330
d3drm: Return ~0u from d3drm_viewport2_GetProjection() for uninitialised viewports.
Signed-off-by: Jeff Smith whydoubt@gmail.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/d3drm/tests/d3drm.c | 4 ++-- dlls/d3drm/viewport.c | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/d3drm/tests/d3drm.c b/dlls/d3drm/tests/d3drm.c index 62194977d4..6821bca50f 100644 --- a/dlls/d3drm/tests/d3drm.c +++ b/dlls/d3drm/tests/d3drm.c @@ -2152,7 +2152,7 @@ static void test_Viewport(void) back = IDirect3DRMViewport_GetBack(viewport); ok(back == -1.0f, "Got unexpected back %.8e\n", back); projection = IDirect3DRMViewport_GetProjection(viewport); - todo_wine ok(projection == ~0u, "Got unexpected projection type %#x.\n", projection); + ok(projection == ~0u, "Got unexpected projection type %#x.\n", projection);
hr = IDirect3DRMViewport_SetCamera(viewport, frame); ok(hr == D3DRMERR_BADOBJECT, "Got unexpected hr %#x.\n", hr); @@ -2345,7 +2345,7 @@ static void test_Viewport(void) back = IDirect3DRMViewport2_GetBack(viewport2); ok(back == -1.0f, "Got unexpected back %.8e\n", back); projection = IDirect3DRMViewport2_GetProjection(viewport2); - todo_wine ok(projection == ~0u, "Got unexpected projection type %#x.\n", projection); + ok(projection == ~0u, "Got unexpected projection type %#x.\n", projection);
hr = IDirect3DRMViewport2_SetCamera(viewport2, frame3); ok(hr == D3DRMERR_BADOBJECT, "Got unexpected hr %#x.\n", hr); diff --git a/dlls/d3drm/viewport.c b/dlls/d3drm/viewport.c index 17b6f1df53..8d9c4fde82 100644 --- a/dlls/d3drm/viewport.c +++ b/dlls/d3drm/viewport.c @@ -978,6 +978,9 @@ static D3DRMPROJECTIONTYPE WINAPI d3drm_viewport2_GetProjection(IDirect3DRMViewp
TRACE("iface %p.\n", iface);
+ if (!viewport->d3d_viewport) + return ~0u; + return viewport->projection; }