Module: wine Branch: master Commit: e2f9bc0d0ba902196d91f919fb6c43a9ef9d3614 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e2f9bc0d0ba902196d91f919fb...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Wed Jan 20 21:31:58 2016 +0300
d2d1: SetDpi() rejects negative values too.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/d2d1/render_target.c | 2 +- dlls/d2d1/tests/d2d1.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/dlls/d2d1/render_target.c b/dlls/d2d1/render_target.c index e4a4ad4..ec2fec1 100644 --- a/dlls/d2d1/render_target.c +++ b/dlls/d2d1/render_target.c @@ -1439,7 +1439,7 @@ static void STDMETHODCALLTYPE d2d_d3d_render_target_SetDpi(ID2D1RenderTarget *if dpi_x = 96.0f; dpi_y = 96.0f; } - else if (dpi_x == 0.0f || dpi_y == 0.0f) + else if (dpi_x <= 0.0f || dpi_y <= 0.0f) return;
render_target->dpi_x = dpi_x; diff --git a/dlls/d2d1/tests/d2d1.c b/dlls/d2d1/tests/d2d1.c index c7d67f1..e6d1a68 100644 --- a/dlls/d2d1/tests/d2d1.c +++ b/dlls/d2d1/tests/d2d1.c @@ -593,6 +593,16 @@ static void test_clip(void) ok(dpi_x == 192.0f, "Got unexpected dpi_x %.8e.\n", dpi_x); ok(dpi_y == 192.0f, "Got unexpected dpi_y %.8e.\n", dpi_y);
+ ID2D1RenderTarget_SetDpi(rt, -10.0f, 96.0f); + ID2D1RenderTarget_GetDpi(rt, &dpi_x, &dpi_y); + ok(dpi_x == 192.0f, "Got unexpected dpi_x %.8e.\n", dpi_x); + ok(dpi_y == 192.0f, "Got unexpected dpi_y %.8e.\n", dpi_y); + + ID2D1RenderTarget_SetDpi(rt, 96.0f, -10.0f); + ID2D1RenderTarget_GetDpi(rt, &dpi_x, &dpi_y); + ok(dpi_x == 192.0f, "Got unexpected dpi_x %.8e.\n", dpi_x); + ok(dpi_y == 192.0f, "Got unexpected dpi_y %.8e.\n", dpi_y); + ID2D1RenderTarget_SetDpi(rt, 96.0f, 0.0f); ID2D1RenderTarget_GetDpi(rt, &dpi_x, &dpi_y); ok(dpi_x == 192.0f, "Got unexpected dpi_x %.8e.\n", dpi_x);